<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright 2012 The Netty Project
  ~
  ~ The Netty Project licenses this file to you under the Apache License,
  ~ version 2.0 (the "License"); you may not use this file except in compliance
  ~ with the License. You may obtain a copy of the License at:
  ~
  ~   https://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing, software
  ~ distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
  ~ WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
  ~ License for the specific language governing permissions and limitations
  ~ under the License.
  -->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/maven-v4_0_0.xsd">

  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.sonatype.oss</groupId>
    <artifactId>oss-parent</artifactId>
    <version>9</version>
  </parent>

  <groupId>io.netty</groupId>
  <artifactId>netty-parent</artifactId>
  <packaging>pom</packaging>
  <version>4.2.0.Alpha5</version>

  <name>Netty</name>
  <url>https://netty.io/</url>
  <description>
    Netty is an asynchronous event-driven network application framework for
    rapid development of maintainable high performance protocol servers and
    clients.
  </description>

  <organization>
    <name>The Netty Project</name>
    <url>https://netty.io/</url>
  </organization>

  <licenses>
    <license>
      <name>Apache License, Version 2.0</name>
      <url>https://www.apache.org/licenses/LICENSE-2.0</url>
    </license>
  </licenses>
  <inceptionYear>2008</inceptionYear>

  <scm>
    <url>https://github.com/netty/netty</url>
    <connection>scm:git:git://github.com/netty/netty.git</connection>
    <developerConnection>scm:git:ssh://git@github.com/netty/netty.git</developerConnection>
    <tag>netty-4.2.0.Alpha5</tag>
  </scm>

  <developers>
    <developer>
      <id>netty.io</id>
      <name>The Netty Project Contributors</name>
      <email>netty@googlegroups.com</email>
      <url>https://netty.io/</url>
      <organization>The Netty Project</organization>
      <organizationUrl>https://netty.io/</organizationUrl>
    </developer>
  </developers>

  <profiles>
    <profile>
      <id>aggregate</id>
      <properties>
        <checkstyle.skip>true</checkstyle.skip>
      </properties>
      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>3.2.0</version>
            <executions>
              <execution>
                <id>aggregate</id>
                <goals>
                  <goal>aggregate</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <skippedModules>
                netty-all,netty-bom,netty-testsuite,netty-testsuite-autobahn,netty-testsuite-http2,
                netty-testsuite-native,netty-testsuite-native-image,netty-testsuite-native-image-client,
                netty-testsuite-native-image-client-runtime-init,netty-testsuite-osgi,netty-testsuite-shading,
                netty-transport-blockhound-tests,netty-transport-native-unix-common-tests,netty-microbench,
                netty-dev-tools,netty-example,testsuite-jpms
              </skippedModules>
              <sourceFileExcludes>
                <exclude>**/com/sun/**/*.java</exclude>
                <exclude>**/example/**/*.java</exclude>
                <exclude>**/testsuite/**/*.java</exclude>
                <exclude>**/microbench/**/*.java</exclude>
                <exclude>**/microbenchmark/**/*.java</exclude>
                <exclude>**/generated/**/*.java</exclude>
                <exclude>**/*Benchmark.java</exclude>
                <exclude>**/*Bench.java</exclude>
                <exclude>**/*Test.java</exclude>
              </sourceFileExcludes>
              <docfilessubdirs>true</docfilessubdirs>
              <outputDirectory>${project.build.directory}/api</outputDirectory>
              <overview>${project.basedir}/src/javadoc/overview.html</overview>
              <doctitle>Netty API Reference (${project.version})</doctitle>
              <windowtitle>Netty API Reference (${project.version})</windowtitle>
              <detectJavaApiLink>false</detectJavaApiLink>
              <links>
                <link>https://docs.oracle.com/javase/8/docs/api/</link>
                <link>https://developers.google.com/protocol-buffers/docs/reference/java/</link>
                <link>https://www.slf4j.org/apidocs/</link>
              </links>
              <groups>
                <group>
                  <title>Low-level data representation</title>
                  <packages>io.netty.buffer*</packages>
                </group>
                <group>
                  <title>Central interface for all I/O operations</title>
                  <packages>io.netty.channel*</packages>
                </group>
                <group>
                  <title>Client &amp; Server bootstrapping utilities</title>
                  <packages>io.netty.bootstrap*</packages>
                </group>
                <group>
                  <title>Reusable I/O event interceptors</title>
                  <packages>io.netty.handler*</packages>
                </group>
                <group>
                  <title>DNS / Host resolvers</title>
                  <packages>io.netty.resolver*</packages>
                </group>
                <group>
                  <title>Utils</title>
                  <packages>io.netty.util*</packages>
                </group>
              </groups>
              <locale>en_US</locale>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-jxr-plugin</artifactId>
            <executions>
              <execution>
                <id>aggregate</id>
                <goals>
                  <goal>aggregate</goal>
                </goals>
              </execution>
            </executions>
            <configuration>
              <linkJavadoc>true</linkJavadoc>
              <destDir>${project.build.directory}/site/xref</destDir>
              <javadocDir>${project.build.directory}/site/apidocs</javadocDir>
              <docTitle>Netty Source Xref (${project.version})</docTitle>
              <windowTitle>Netty Source Xref (${project.version})</windowTitle>
              <excludes>
                <exclude>**/com/sun/**/*.java</exclude>
                <exclude>**/microbench/**/*.java</exclude>
                <exclude>**/microbenchmark/**/*.java</exclude>
              </excludes>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <!-- Detect if we use GraalVM and if so enable the native image testsuite -->
    <profile>
      <id>graal</id>
      <activation>
        <file>
          <!-- GraalVM Component Updater should exists when using GraalVM-->
          <exists>${java.home}/bin/gu</exists>
        </file>
      </activation>
      <properties>
        <skipNativeImageTestsuite>false</skipNativeImageTestsuite>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <testJvm />
      </properties>
    </profile>
    <profile>
      <id>java23</id>
      <activation>
        <jdk>23</jdk>
      </activation>
      <properties>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- We need to use 1.8 as otherwise default methods are not picked up and so result in compile errors for
             our EventExecutorGroup implementations
        -->
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.release>8</maven.compiler.release>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <revapi.skip>true</revapi.skip>
      </properties>
    </profile>
    <profile>
      <id>java22</id>
      <activation>
        <jdk>22</jdk>
      </activation>
      <properties>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>

        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <revapi.skip>true</revapi.skip>
      </properties>
    </profile>
    <profile>
      <id>java21</id>
      <activation>
        <jdk>21</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <revapi.skip>true</revapi.skip>
      </properties>
    </profile>
    <profile>
      <id>java20</id>
      <activation>
        <jdk>20</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>

        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <revapi.skip>true</revapi.skip>
      </properties>
    </profile>
    <profile>
      <id>java19</id>
      <activation>
        <jdk>19</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>

        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <revapi.skip>true</revapi.skip>
      </properties>
    </profile>
    <profile>
      <id>java18</id>
      <activation>
        <jdk>18</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>

        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <revapi.skip>true</revapi.skip>
      </properties>
    </profile>
    <profile>
      <id>java17</id>
      <activation>
        <jdk>17</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>

        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>

    <!-- JDK16 -->
    <profile>
      <id>java16</id>
      <activation>
        <jdk>16</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>

    <!-- JDK15 -->
    <profile>
      <id>java15</id>
      <activation>
        <jdk>15</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>
    <!-- JDK14 -->
    <profile>
      <id>java14</id>
      <activation>
        <jdk>14</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>
    <!-- JDK13 -->
    <profile>
      <id>java13</id>
      <activation>
        <jdk>13</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>

    <!-- JDK12 -->
    <profile>
      <id>java12</id>
      <activation>
        <jdk>12</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java12 EA 22 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>

    <!-- JDK11 -->
    <profile>
      <id>java11</id>
      <activation>
        <jdk>11</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
        <!-- pax-exam does not work on latest Java11 build -->
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
      </properties>
    </profile>

    <!-- JDK10 -->
    <profile>
      <id>java10</id>
      <activation>
        <jdk>10</jdk>
      </activation>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny --add-modules java.xml.bind ${argLine.java9.extras}</argLine.java9>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- Needed because of https://issues.apache.org/jira/browse/MENFORCER-275 -->
        <enforcer.plugin.version>3.0.0-M3</enforcer.plugin.version>
        <!-- 1.4.x does not work in Java10+ -->
        <jboss.marshalling.version>2.0.5.Final</jboss.marshalling.version>
      </properties>
    </profile>

    <!-- JDK9 -->
    <profile>
      <id>java9</id>
      <properties>
        <maven.compiler.release>8</maven.compiler.release>
        <argLine.java9.extras />
        <!-- Export some stuff which is used during our tests -->
        <argLine.java9>--illegal-access=deny --add-modules java.xml.bind ${argLine.java9.extras}</argLine.java9>
        <!-- Skip as maven plugin not works with Java9 yet -->
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <!-- Needed because of https://issues.apache.org/jira/browse/MENFORCER-275 -->
        <enforcer.plugin.version>3.0.0-M1</enforcer.plugin.version>
      </properties>
      <activation>
        <jdk>9</jdk>
      </activation>
    </profile>

    <profile>
      <id>testsuite-jpms</id>
      <activation>
        <jdk>[11,)</jdk>
      </activation>
      <modules>
        <module>testsuite-jpms</module>
      </modules>
    </profile>

    <profile>
      <id>boringssl-mac-aarch64</id>
      <activation>
        <os>
          <!--
           Automatically active on mac with aarch64 as we only release static boringssl version of
           netty-tcnative for it.
         -->
          <family>mac</family>
          <arch>aarch64</arch>
        </os>
      </activation>
      <properties>
        <tcnative.artifactId>netty-tcnative-boringssl-static</tcnative.artifactId>
        <tcnative.classifier />
      </properties>
    </profile>
    <profile>
      <id>boringssl-linux-aarch64</id>
      <activation>
        <os>
          <!--
           Automatically active on linux with aarch64 as we only release static boringssl version of
           netty-tcnative for it.
         -->
          <family>linux</family>
          <arch>aarch64</arch>
        </os>
      </activation>
      <properties>
        <tcnative.artifactId>netty-tcnative-boringssl-static</tcnative.artifactId>
        <tcnative.classifier />
      </properties>
    </profile>
    <profile>
      <id>boringssl</id>
      <activation>
        <!--
          Automatically active on windows as we only release static boringssl version of
          netty-tcnative for windows.
        -->
        <os>
          <family>windows</family>
        </os>
      </activation>
      <properties>
        <tcnative.artifactId>netty-tcnative-boringssl-static</tcnative.artifactId>
        <tcnative.classifier />
      </properties>
    </profile>
    <profile>
      <id>boringssl-snapshot</id>
      <properties>
        <tcnative.artifactId>netty-tcnative-boringssl-static</tcnative.artifactId>
        <tcnative.version>2.0.67.Final-SNAPSHOT</tcnative.version>
        <tcnative.classifier>${os.detected.classifier}</tcnative.classifier>
      </properties>
    </profile>
    <profile>
      <id>leak</id>
      <properties>
        <argLine.leak>-Dio.netty.leakDetectionLevel=paranoid -Dio.netty.leakDetection.targetRecords=32</argLine.leak>
      </properties>
    </profile>
    <profile>
      <id>noPrintGC</id>
      <properties>
        <argLine.printGC>-D_</argLine.printGC>
      </properties>
    </profile>
    <profile>
      <id>noUnsafe</id>
      <properties>
        <argLine.noUnsafe>-Dio.netty.noUnsafe=true</argLine.noUnsafe>
      </properties>
    </profile>
    <profile>
      <id>jdk23DenyUnsafe</id>
      <properties>
        <argLine.noUnsafe>--sun-misc-unsafe-memory-access=deny</argLine.noUnsafe>
      </properties>
    </profile>
    <profile>
      <!-- Skip many checks for faster turn-around in local builds. -->
      <id>fast</id>
      <properties>
        <forbiddenapis.skip>true</forbiddenapis.skip>
        <checkstyle.skip>true</checkstyle.skip>
        <revapi.skip>true</revapi.skip>
        <xml.skip>true</xml.skip>
        <skipShadingTestsuite>true</skipShadingTestsuite>
        <skipDeploy>true</skipDeploy>
        <skipTests>true</skipTests>
        <skipOsgiTestsuite>true</skipOsgiTestsuite>
        <skipAutobahnTestsuite>true</skipAutobahnTestsuite>
        <skipHttp2Testsuite>true</skipHttp2Testsuite>
      </properties>
    </profile>
    <profile>
      <id>coverage</id>
      <properties>
        <argLine.coverage>${jacoco.argLine}</argLine.coverage>
      </properties>
      <build>
        <plugins>
          <plugin>
            <groupId>org.jacoco</groupId>
            <artifactId>jacoco-maven-plugin</artifactId>
            <version>0.7.7.201606060606</version>
            <executions>
              <execution>
                <id>jacoco-prepare-agent</id>
                <goals>
                  <goal>prepare-agent</goal>
                </goals>
                <configuration>
                  <propertyName>jacoco.argLine</propertyName>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>jdk8</id>
      <activation>
        <jdk>[1.8,)</jdk>
      </activation>
      <properties>
        <!-- Our Javadoc has poor enough quality to fail the build thanks to JDK8 javadoc which got more strict. -->
        <maven.javadoc.failOnError>false</maven.javadoc.failOnError>
      </properties>
    </profile>
  </profiles>

  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.release />
    <netty.dev.tools.directory>${project.build.directory}/dev-tools</netty.dev.tools.directory>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    <netty.build.version>31</netty.build.version>
    <jboss.marshalling.version>1.4.11.Final</jboss.marshalling.version>
    <bouncycastle.version>1.78.1</bouncycastle.version>
    <argLine.common>
      -server
      -dsa -da -ea:io.netty...
      -XX:+HeapDumpOnOutOfMemoryError
    </argLine.common>
    <argLine.jni>-D_</argLine.jni>
    <argLine.leak>-D_</argLine.leak> <!-- Overridden when 'leak' profile is active -->
    <argLine.noUnsafe>-D_</argLine.noUnsafe> <!-- Overridden when 'noUnsafe' profile is active -->
    <argLine.coverage>-D_</argLine.coverage> <!-- Overridden when 'coverage' profile is active -->
    <argLine.printGC>-XX:+PrintGCDetails</argLine.printGC>
    <argLine.java9 /> <!-- Overridden when 'java9' profile is active -->
    <argLine.javaProperties>-D_</argLine.javaProperties>
    <!-- Configure the os-maven-plugin extension to expand the classifier on                  -->
    <!-- Fedora-"like" systems. This is currently only used for the netty-tcnative dependency -->
    <osmaven.version>1.7.1</osmaven.version>
    <!-- keep in sync with PlatformDependent#ALLOWED_LINUX_OS_CLASSIFIERS -->
    <os.detection.classifierWithLikes>fedora,suse,arch</os.detection.classifierWithLikes>
    <tcnative.artifactId>netty-tcnative</tcnative.artifactId>
    <!-- Keep in sync with bom/pom.xml -->
    <tcnative.version>2.0.66.Final</tcnative.version>
    <tcnative.classifier>${os.detected.classifier}</tcnative.classifier>
    <conscrypt.groupId>org.conscrypt</conscrypt.groupId>
    <conscrypt.artifactId>conscrypt-openjdk-uber</conscrypt.artifactId>
    <conscrypt.version>2.5.2</conscrypt.version>
    <conscrypt.classifier />
    <jni.classifier>${os.detected.name}-${os.detected.arch}</jni.classifier>
    <logging.config>${project.basedir}/../common/src/test/resources/logback-test.xml</logging.config>
    <logging.logLevel>debug</logging.logLevel>
    <log4j2.version>2.23.1</log4j2.version>
    <enforcer.plugin.version>3.0.0</enforcer.plugin.version>
    <junit.version>5.9.0</junit.version>
    <skipTests>false</skipTests>
    <testJavaHome>${java.home}</testJavaHome>
    <testJvm>${testJavaHome}/bin/java</testJvm>
    <skipOsgiTestsuite>false</skipOsgiTestsuite>
    <skipAutobahnTestsuite>false</skipAutobahnTestsuite>
    <skipHttp2Testsuite>false</skipHttp2Testsuite>
    <graalvm.version>19.3.6</graalvm.version>
    <brotli4j.version>1.16.0</brotli4j.version>
    <!-- By default skip native testsuite as it requires a custom environment with graalvm installed -->
    <skipNativeImageTestsuite>true</skipNativeImageTestsuite>
    <skipShadingTestsuite>false</skipShadingTestsuite>
    <skipDeploy>false</skipDeploy>
    <multiReleaseJar>true</multiReleaseJar>
    <javaModuleName />
  </properties>

  <modules>
    <module>all</module>
    <module>dev-tools</module>
    <module>common</module>
    <module>buffer</module>
    <module>codec-base</module>
    <module>codec-compression</module>
    <module>codec-protobuf</module>
    <module>codec-marshalling</module>
    <module>codec</module>
    <module>codec-dns</module>
    <module>codec-haproxy</module>
    <module>codec-http</module>
    <module>codec-http2</module>
    <module>codec-memcache</module>
    <module>codec-mqtt</module>
    <module>codec-redis</module>
    <module>codec-smtp</module>
    <module>codec-socks</module>
    <module>codec-stomp</module>
    <module>codec-xml</module>
    <module>resolver</module>
    <module>resolver-dns</module>
    <module>resolver-dns-classes-macos</module>
    <module>resolver-dns-native-macos</module>
    <module>transport</module>
    <module>transport-native-unix-common-tests</module>
    <module>transport-native-unix-common</module>
    <module>transport-classes-epoll</module>
    <module>transport-native-epoll</module>
    <module>transport-classes-io_uring</module>
    <module>transport-native-io_uring</module>
    <module>transport-classes-kqueue</module>
    <module>transport-native-kqueue</module>
    <module>transport-rxtx</module>
    <module>transport-sctp</module>
    <module>transport-udt</module>
    <module>handler</module>
    <module>handler-proxy</module>
    <module>handler-ssl-ocsp</module>
    <module>example</module>
    <module>testsuite</module>
    <module>testsuite-autobahn</module>
    <module>testsuite-http2</module>
    <module>testsuite-osgi</module>
    <module>testsuite-shading</module>
    <module>testsuite-native</module>
    <module>testsuite-native-image</module>
    <module>testsuite-native-image-client</module>
    <module>testsuite-native-image-client-runtime-init</module>
    <module>transport-blockhound-tests</module>
    <module>microbench</module>
    <module>bom</module>
  </modules>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>io.netty</groupId>
        <artifactId>netty-jni-util</artifactId>
        <version>0.0.9.Final</version>
        <classifier>sources</classifier>
        <optional>true</optional>
      </dependency>

      <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>netty-dev-tools</artifactId>
        <version>${project.version}</version>
      </dependency>

      <!-- Needed for java11 and later as javax.activation is not part of the JDK anymore -->
      <dependency>
        <groupId>com.sun.activation</groupId>
        <artifactId>javax.activation</artifactId>
        <version>1.2.0</version>
      </dependency>

      <!-- JBoss Marshalling - completely optional -->
      <dependency>
        <groupId>org.jboss.marshalling</groupId>
        <artifactId>jboss-marshalling</artifactId>
        <version>${jboss.marshalling.version}</version>
        <scope>compile</scope>
        <optional>true</optional>
      </dependency>

      <!-- Google Protocol Buffers - completely optional -->
      <dependency>
        <groupId>com.google.protobuf</groupId>
        <artifactId>protobuf-java</artifactId>
        <version>3.16.3</version>
      </dependency>
      <dependency>
        <groupId>com.google.protobuf.nano</groupId>
        <artifactId>protobuf-javanano</artifactId>
        <version>3.0.0-alpha-5</version>
      </dependency>

      <!-- Our own Tomcat Native fork - completely optional for the native lib, used for accelerating SSL with OpenSSL. -->
      <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>netty-tcnative-classes</artifactId>
        <version>${tcnative.version}</version>
        <scope>compile</scope>
        <optional>true</optional>
      </dependency>
      <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>${tcnative.artifactId}</artifactId>
        <version>${tcnative.version}</version>
        <classifier>${tcnative.classifier}</classifier>
        <scope>runtime</scope>
        <optional>true</optional>
      </dependency>

      <!-- Conscrypt - needed for running tests, used for accelerating SSL with OpenSSL. -->
      <dependency>
        <groupId>${conscrypt.groupId}</groupId>
        <artifactId>${conscrypt.artifactId}</artifactId>
        <classifier>${conscrypt.classifier}</classifier>
        <version>${conscrypt.version}</version>
        <scope>compile</scope>
        <optional>true</optional>
      </dependency>

      <!--
        Bouncy Castle - completely optional, only needed when:
        - you generate a temporary self-signed certificate using SelfSignedCertificate, and
        - you don't use the JDK which doesn't provide sun.security.x509 package.
      -->
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcpkix-jdk18on</artifactId>
        <version>${bouncycastle.version}</version>
        <scope>compile</scope>
        <optional>true</optional>
      </dependency>

      <!--
        Completely optional and only needed for OCSP stapling to construct and
        parse OCSP requests and responses.
      -->
      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk18on</artifactId>
        <version>${bouncycastle.version}</version>
        <scope>compile</scope>
        <optional>true</optional>
      </dependency>

      <dependency>
        <groupId>com.fasterxml</groupId>
        <artifactId>aalto-xml</artifactId>
        <version>1.3.3</version>
      </dependency>

      <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jzlib</artifactId>
        <version>1.1.3</version>
      </dependency>
      <dependency>
        <groupId>com.ning</groupId>
        <artifactId>compress-lzf</artifactId>
        <version>1.0.3</version>
      </dependency>
      <dependency>
        <groupId>net.jpountz.lz4</groupId>
        <artifactId>lz4</artifactId>
        <version>1.3.0</version>
      </dependency>
      <dependency>
        <groupId>com.github.jponge</groupId>
        <artifactId>lzma-java</artifactId>
        <version>1.3</version>
      </dependency>
      <dependency>
        <groupId>com.github.luben</groupId>
        <artifactId>zstd-jni</artifactId>
        <version>1.5.6-5</version>
        <optional>true</optional>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>brotli4j</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-linux-ppc64le</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-linux-x86_64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-linux-aarch64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-linux-riscv64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-linux-armv7</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-osx-x86_64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-osx-aarch64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-windows-x86_64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>
      <dependency>
        <groupId>com.aayushatharva.brotli4j</groupId>
        <artifactId>native-windows-aarch64</artifactId>
        <version>${brotli4j.version}</version>
      </dependency>

      <!-- Java concurrency tools for the JVM -->
      <dependency>
        <groupId>org.jctools</groupId>
        <artifactId>jctools-core</artifactId>
        <version>4.0.5</version>
      </dependency>

      <!-- Annotations for IDE integration and analysis -->
      <dependency>
        <groupId>org.jetbrains</groupId>
        <artifactId>annotations-java5</artifactId>
        <version>23.0.0</version>
        <scope>provided</scope>
      </dependency>

      <!-- sun.misc.Unsafe stubs -->
      <dependency>
        <groupId>org.jboss</groupId>
        <artifactId>jdk-misc</artifactId>
        <version>3.Final</version>
        <scope>provided</scope>
      </dependency>

      <dependency>
        <groupId>org.rxtx</groupId>
        <artifactId>rxtx</artifactId>
        <version>2.1.7</version>
      </dependency>

      <dependency>
        <groupId>com.barchart.udt</groupId>
        <artifactId>barchart-udt-bundle</artifactId>
        <version>2.3.0</version>
      </dependency>

      <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>servlet-api</artifactId>
        <version>2.5</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>2.0.13</version>
      </dependency>
      <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.3.4</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-api</artifactId>
        <version>${log4j2.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-1.2-api</artifactId>
        <version>${log4j2.version}</version>
        <exclusions>
          <exclusion>
            <artifactId>mail</artifactId>
            <groupId>javax.mail</groupId>
          </exclusion>
          <exclusion>
            <artifactId>jms</artifactId>
            <groupId>javax.jms</groupId>
          </exclusion>
          <exclusion>
            <artifactId>jmxtools</artifactId>
            <groupId>com.sun.jdmk</groupId>
          </exclusion>
          <exclusion>
            <artifactId>jmxri</artifactId>
            <groupId>com.sun.jmx</groupId>
          </exclusion>
        </exclusions>
        <optional>true</optional>
      </dependency>

      <!-- Metrics providers -->
      <dependency>
        <groupId>com.yammer.metrics</groupId>
        <artifactId>metrics-core</artifactId>
        <version>2.2.0</version>
      </dependency>

      <!-- Common test dependencies -->
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-api</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-engine</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter-params</artifactId>
        <version>${junit.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>${project.groupId}</groupId>
        <artifactId>netty-build-common</artifactId>
        <version>${netty.build.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.hamcrest</groupId>
        <artifactId>hamcrest-library</artifactId>
        <version>2.2</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.assertj</groupId>
        <artifactId>assertj-core</artifactId>
        <version>3.18.0</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.mockito</groupId>
        <artifactId>mockito-core</artifactId>
        <version>2.18.3</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.reflections</groupId>
        <artifactId>reflections</artifactId>
        <version>0.10.2</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.3.14</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>io.github.artsok</groupId>
        <artifactId>rerunner-jupiter</artifactId>
        <version>2.1.6</version>
        <scope>test</scope>
      </dependency>

      <!-- Test dependencies for jboss marshalling encoder/decoder -->
      <dependency>
        <groupId>org.jboss.marshalling</groupId>
        <artifactId>jboss-marshalling-serial</artifactId>
        <version>${jboss.marshalling.version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.jboss.marshalling</groupId>
        <artifactId>jboss-marshalling-river</artifactId>
        <version>${jboss.marshalling.version}</version>
        <scope>test</scope>
      </dependency>

      <!-- Test dependencies for microbench -->
      <dependency>
        <groupId>com.google.caliper</groupId>
        <artifactId>caliper</artifactId>
        <version>0.5-rc1</version>
        <scope>test</scope>
      </dependency>

      <!-- Test dependency for Bzip2 compression codec -->
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-compress</artifactId>
        <version>1.26.0</version>
        <scope>test</scope>
      </dependency>

      <!-- Test dependency for Brotli compression codec -->
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.8.0</version>
        <scope>test</scope>
      </dependency>

      <!-- Test dependency used by http/2 hpack -->
      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.8.9</version>
        <scope>test</scope>
      </dependency>

      <!-- Test suite dependency for generating a compressed heap dump file -->
      <dependency>
        <groupId>org.tukaani</groupId>
        <artifactId>xz</artifactId>
        <version>1.5</version>
      </dependency>

      <!-- Test dependency for resolver-dns -->
      <dependency>
        <groupId>org.apache.directory.server</groupId>
        <artifactId>apacheds-protocol-dns</artifactId>
        <version>1.5.7</version>
        <scope>test</scope>
      </dependency>

      <!-- Test dependency for log4j2 tests -->
      <dependency>
        <groupId>org.apache.logging.log4j</groupId>
        <artifactId>log4j-core</artifactId>
        <version>${log4j2.version}</version>
        <scope>test</scope>
      </dependency>

      <!-- BlockHound integration -->
      <dependency>
        <groupId>io.projectreactor.tools</groupId>
        <artifactId>blockhound</artifactId>
        <version>1.0.6.RELEASE</version>
      </dependency>
    </dependencies>
  </dependencyManagement>

  <dependencies>
    <!-- Testing frameworks and related dependencies -->
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-api</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-engine</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.junit.jupiter</groupId>
      <artifactId>junit-jupiter-params</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>${project.groupId}</groupId>
      <artifactId>netty-build-common</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.hamcrest</groupId>
      <artifactId>hamcrest-library</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.assertj</groupId>
      <artifactId>assertj-core</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>ch.qos.logback</groupId>
      <artifactId>logback-classic</artifactId>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <extensions>
      <extension>
        <groupId>kr.motd.maven</groupId>
        <artifactId>os-maven-plugin</artifactId>
        <version>${osmaven.version}</version>
      </extension>
    </extensions>

    <plugins>
      <plugin>
        <groupId>org.revapi</groupId>
        <artifactId>revapi-maven-plugin</artifactId>
        <version>0.15.0</version>
        <dependencies>
          <dependency>
            <groupId>org.revapi</groupId>
            <artifactId>revapi-java</artifactId>
            <version>0.28.1</version>
          </dependency>
        </dependencies>
        <configuration>
          <versionFormat>.*\.Final</versionFormat>
          <analysisConfiguration>
            <revapi.filter>
              <elements>
                <exclude>
                  <item>
                    <matcher>java-package</matcher>
                    <match>/.*\.internal\..*/</match>
                  </item>
                  <item>
                    <matcher>java-package</matcher>
                    <match>/.*\.internal/</match>
                  </item>
                  <item>
                    <matcher>java-package</matcher>
                    <match>/org\.openjdk\.jmh\..*/</match>
                  </item>
                  <item>
                    <matcher>java</matcher>
                    <match>@io.netty.util.internal.UnstableApi ^*;</match>
                  </item>
                </exclude>
              </elements>
              <annotated>
                <exclude>
                  <item>@io.netty.util.internal.UnstableApi</item>
                </exclude>
              </annotated>
            </revapi.filter>
            <revapi.differences>
              <differences>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.constantValueChanged</code>
                  <classQualifiedName>io.netty.handler.codec.http2.Http2CodecUtil</classQualifiedName>
                  <field>CONTINUATION_FRAME_HEADER_LENGTH</field>
                  <oldValue>10</oldValue>
                  <newValue>9</newValue>
                  <justification>Padding was removed from CONTINUATION frame in http2-spec.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.missing.oldClass</code> <!-- Missing in prior Netty versions -->
                  <old>missing-class org.slf4j.Logger</old>
                  <new>missing-class org.slf4j.Logger</new>
                  <justification>The com.barchart.udt library exposes this class in their API, but slf4j is an optional dependency to Netty.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.missing.newClass</code> <!-- Missing in this Netty version -->
                  <old>missing-class org.slf4j.Logger</old>
                  <new>missing-class org.slf4j.Logger</new>
                  <justification>The com.barchart.udt library exposes this class in their API, but slf4j is an optional dependency to Netty.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <regex>true</regex>
                  <package>io\.netty\..*</package>
                  <justification>They're not "external classes" if they're from a Netty package.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <classQualifiedName>io.netty.util.internal.InternalThreadLocalMap</classQualifiedName>
                  <justification>Ignore cache padding.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method java.lang.String io.netty.testsuite.util.TestUtils::testMethodName(org.junit.rules.TestName)</old>
                  <justification>This should be test-only, and we're removing support for JUnit 4.</justification>
                </item>
                <!-- Necessary changes to fix #12627 -->
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method void io.netty.util.AbstractReferenceCounted::setRefCnt(int) @ io.netty.handler.codec.http.multipart.MixedAttribute</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method void io.netty.util.AbstractReferenceCounted::setRefCnt(int) @ io.netty.handler.codec.http.multipart.MixedFileUpload</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class io.netty.handler.codec.http.multipart.MixedFileUpload</old>
                  <new>class io.netty.handler.codec.http.multipart.MixedFileUpload</new>
                  <superClass>io.netty.handler.codec.http.multipart.AbstractMixedHttpData&lt;io.netty.handler.codec.http.multipart.FileUpload&gt;</superClass>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class io.netty.handler.codec.http.multipart.MixedAttribute</old>
                  <new>class io.netty.handler.codec.http.multipart.MixedAttribute</new>
                  <superClass>io.netty.handler.codec.http.multipart.AbstractMixedHttpData&lt;io.netty.handler.codec.http.multipart.Attribute&gt;</superClass>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <annotation>@io.netty.channel.ChannelHandlerMask.Skip</annotation>
                  <justification>No change in compatibility</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.unix.DomainSocketAddress io.netty.channel.unix.Socket::localDomainSocketAddress()</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.unix.DomainSocketAddress io.netty.channel.unix.Socket::remoteDomainSocketAddress()</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>

                <!-- Needed for IoHandle concept -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class io.netty.channel.nio.NioEventLoopGroup</old>
                  <new>class io.netty.channel.nio.NioEventLoopGroup</new>
                  <superClass>io.netty.channel.MultiThreadIoEventLoopGroup</superClass>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChangedCovariantly</code>
                  <old>method io.netty.channel.EventLoop io.netty.channel.SingleThreadEventLoop::next() @ io.netty.channel.nio.NioEventLoop</old>
                  <new>method io.netty.channel.IoEventLoop io.netty.channel.SingleThreadIoEventLoop::next() @ io.netty.channel.nio.NioEventLoop</new>
                  <justification>Acceptable incompatibility for required change, as it's a new sub-interface</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop()</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.nio.AbstractNioChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class io.netty.channel.local.LocalEventLoopGroup</old>
                  <new>class io.netty.channel.local.LocalEventLoopGroup</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class io.netty.channel.local.LocalEventLoopGroup</old>
                  <new>class io.netty.channel.local.LocalEventLoopGroup</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.sctp.nio.NioSctpChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.sctp.nio.NioSctpChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.sctp.nio.NioSctpServerChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.sctp.nio.NioSctpServerChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtAcceptorChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtAcceptorChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtByteAcceptorChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtByteAcceptorChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtByteConnectorChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtByteConnectorChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtByteRendezvousChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtByteRendezvousChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtMessageAcceptorChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtMessageConnectorChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtMessageConnectorChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method io.netty.channel.nio.NioEventLoop io.netty.channel.nio.AbstractNioChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel</old>
                  <new>method io.netty.channel.EventLoop io.netty.channel.AbstractChannel::eventLoop() @ io.netty.channel.udt.nio.NioUdtMessageRendezvousChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.kqueue.KQueueIoRegistration io.netty.channel.kqueue.AbstractKQueueChannel::registration() @ io.netty.channel.kqueue.AbstractKQueueServerChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.kqueue.KQueueIoRegistration io.netty.channel.kqueue.AbstractKQueueChannel::registration() @ io.netty.channel.kqueue.AbstractKQueueStreamChannel</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChangedCovariantly</code>
                  <old>method io.netty.channel.EventLoop io.netty.channel.MultithreadEventLoopGroup::next() @ io.netty.channel.kqueue.KQueueEventLoopGroup</old>
                  <new>method io.netty.channel.IoEventLoop io.netty.channel.MultiThreadIoEventLoopGroup::next() @ io.netty.channel.kqueue.KQueueEventLoopGroup</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void io.netty.channel.epoll.EpollEventLoop::cleanup()</old>
                  <new>method void io.netty.channel.SingleThreadIoEventLoop::cleanup() @ io.netty.channel.epoll.EpollEventLoop</new>
                  <justification>Acceptable incompatibility for required change</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method void io.netty.channel.epoll.EpollEventLoop::closeFileDescriptors()</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.IoHandler io.netty.channel.SingleThreadIoEventLoop::ioHandler() @ io.netty.channel.epoll.EpollEventLoop</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChangedCovariantly</code>
                  <old>method io.netty.channel.EventLoop io.netty.channel.SingleThreadEventLoop::next() @ io.netty.channel.epoll.EpollEventLoop</old>
                  <new>method io.netty.channel.IoEventLoop io.netty.channel.SingleThreadIoEventLoop::next() @ io.netty.channel.epoll.EpollEventLoop</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method void io.netty.channel.epoll.EpollEventLoop::openFileDescriptors()</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.util.concurrent.Future&lt;io.netty.channel.IoRegistration&gt; io.netty.channel.SingleThreadIoEventLoop::register(io.netty.channel.IoHandle) @ io.netty.channel.epoll.EpollEventLoop</new>
                </item>

                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void io.netty.channel.epoll.EpollEventLoop::wakeup(boolean)</old>
                  <new>method void io.netty.channel.SingleThreadIoEventLoop::wakeup(boolean) @ io.netty.channel.epoll.EpollEventLoop</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>ava.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class io.netty.channel.epoll.EpollEventLoop</old>
                  <new>class io.netty.channel.epoll.EpollEventLoop</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChangedCovariantly</code>
                  <old>method io.netty.channel.EventLoop io.netty.channel.MultithreadEventLoopGroup::next() @ io.netty.channel.epoll.EpollEventLoopGroup</old>
                  <new>method io.netty.channel.IoEventLoop io.netty.channel.MultiThreadIoEventLoopGroup::next() @ io.netty.channel.epoll.EpollEventLoopGroup</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class io.netty.channel.epoll.EpollEventLoop</old>
                  <new>class io.netty.channel.epoll.EpollEventLoop</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.epoll.EpollIoRegistration io.netty.channel.epoll.AbstractEpollChannel::registration() @ io.netty.channel.epoll.AbstractEpollServerChannel</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method io.netty.channel.epoll.EpollIoRegistration io.netty.channel.epoll.AbstractEpollChannel::registration() @ io.netty.channel.epoll.AbstractEpollStreamChannel</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonPublicPartOfAPI</code>
                  <new>interface io.netty.channel.epoll.EpollIoRegistration</new>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.AbstractEpollServerChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.AbstractEpollStreamChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollDatagramChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollDomainDatagramChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollDomainSocketChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollDomainSocketChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollServerDomainSocketChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollServerSocketChannel</old>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field io.netty.channel.epoll.AbstractEpollChannel.flags @ io.netty.channel.epoll.EpollSocketChannel</old>
                </item>

                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method B io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::decoderEnforceMaxConsecutiveEmptyDataFrames(int) @ io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder</old>
                  <new>method io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder::decoderEnforceMaxConsecutiveEmptyDataFrames(int)</new>
                  <justification>Acceptable incompatibility for required change, because the method was not previously exposed; protected visiblity in super-class, not made public in final sub-class until now</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method B io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::decoderEnforceMaxRstFramesPerWindow(int, int) @ io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder</old>
                  <new>method io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder::decoderEnforceMaxRstFramesPerWindow(int, int)</new>
                  <justification>Acceptable incompatibility for required change, because the method was not previously exposed; protected visiblity in super-class, not made public in final sub-class until now</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method B io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::encoderIgnoreMaxHeaderListSize(boolean) @ io.netty.handler.codec.http2.HttpToHttp2ConnectionHandlerBuilder</old>
                  <new>method io.netty.handler.codec.http2.HttpToHttp2ConnectionHandlerBuilder io.netty.handler.codec.http2.HttpToHttp2ConnectionHandlerBuilder::encoderIgnoreMaxHeaderListSize(boolean)</new>
                  <justification>Acceptable incompatibility for required change, because the method was not previously exposed; protected visiblity in super-class, not made public in final sub-class until now</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method B io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::encoderIgnoreMaxHeaderListSize(boolean) @ io.netty.handler.codec.http2.HttpToHttp2ConnectionHandlerBuilder</old>
                  <new>method io.netty.handler.codec.http2.HttpToHttp2ConnectionHandlerBuilder io.netty.handler.codec.http2.HttpToHttp2ConnectionHandlerBuilder::encoderIgnoreMaxHeaderListSize(boolean)</new>
                  <oldVisibility>protected</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Acceptable incompatibility for required change, because the method was not previously exposed; protected visiblity in super-class, not made public in final sub-class until now</justification>
                </item>

                <!-- New issues found by revapi upgrade -->
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method int io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::decoderEnforceMaxConsecutiveEmptyDataFrames() @ io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder</old>
                  <new>method int io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder::decoderEnforceMaxConsecutiveEmptyDataFrames()</new>
                  <oldVisibility>protected</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Acceptable incompatibility</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method B io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::decoderEnforceMaxConsecutiveEmptyDataFrames(int) @ io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder</old>
                  <new>method io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder::decoderEnforceMaxConsecutiveEmptyDataFrames(int)</new>
                  <oldVisibility>protected</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Acceptable incompatibility</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method B io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T extends io.netty.handler.codec.http2.Http2ConnectionHandler, B extends io.netty.handler.codec.http2.AbstractHttp2ConnectionHandlerBuilder&lt;T, B&gt;&gt;::decoderEnforceMaxRstFramesPerWindow(int, int) @ io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder</old>
                  <new>method io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder io.netty.handler.codec.http2.Http2ConnectionHandlerBuilder::decoderEnforceMaxRstFramesPerWindow(int, int)</new>
                  <oldVisibility>protected</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Acceptable incompatibility</justification>
                </item>
                <!-- BouncyCastle upgrade -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class org.bouncycastle.asn1.ASN1BitString</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.bouncycastle.asn1.ASN1BitStringParser</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class org.bouncycastle.asn1.ASN1Object</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.bouncycastle.asn1.ASN1TaggedObjectParser</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityReduced</code>
                  <old>method void org.bouncycastle.asn1.ASN1TaggedObject::&lt;init&gt;(boolean, int, org.bouncycastle.asn1.ASN1Encodable)</old>
                  <new>method void org.bouncycastle.asn1.ASN1TaggedObject::&lt;init&gt;(boolean, int, org.bouncycastle.asn1.ASN1Encodable)</new>
                  <oldVisibility>public</oldVisibility>
                  <oldVisibility>protected</oldVisibility>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.asn1.ASN1TaggedObject::getLoadedObject()</old>
                  <new>method org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.asn1.ASN1TaggedObject::getLoadedObject()</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method org.bouncycastle.asn1.ASN1Primitive org.bouncycastle.asn1.ASN1TaggedObject::getObject()</old>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method org.bouncycastle.asn1.ASN1Encodable org.bouncycastle.asn1.ASN1TaggedObject::getObjectParser(int, boolean) throws java.io.IOException</old>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field org.bouncycastle.asn1.ASN1BitString.data @ org.bouncycastle.asn1.DERBitString</old>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removed</code>
                  <old>field org.bouncycastle.asn1.ASN1BitString.padBits @ org.bouncycastle.asn1.DERBitString</old>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.DERBitString::getInstance(java.lang.Object)</old>
                  <new>method org.bouncycastle.asn1.ASN1BitString org.bouncycastle.asn1.ASN1BitString::getInstance(java.lang.Object) @ org.bouncycastle.asn1.DERBitString</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.DERBitString::getInstance(org.bouncycastle.asn1.ASN1TaggedObject, boolean)</old>
                  <new>method org.bouncycastle.asn1.ASN1BitString org.bouncycastle.asn1.ASN1BitString::getInstance(org.bouncycastle.asn1.ASN1TaggedObject, boolean) @ org.bouncycastle.asn1.DERBitString</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityReduced</code>
                  <old>method void org.bouncycastle.asn1.ocsp.ResponseBytes::&lt;init&gt;(org.bouncycastle.asn1.ASN1Sequence)</old>
                  <new>method void org.bouncycastle.asn1.ocsp.ResponseBytes::&lt;init&gt;(org.bouncycastle.asn1.ASN1Sequence)</new>
                  <oldVisibility>public</oldVisibility>
                  <newVisibility>protected</newVisibility>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.x509.Certificate::getSignature()</old>
                  <new>method org.bouncycastle.asn1.ASN1BitString org.bouncycastle.asn1.x509.Certificate::getSignature()</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.x509.SubjectPublicKeyInfo::getPublicKeyData()</old>
                  <new>method org.bouncycastle.asn1.ASN1BitString org.bouncycastle.asn1.x509.SubjectPublicKeyInfo::getPublicKeyData()</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.x509.TBSCertificate::getIssuerUniqueId()</old>
                  <new>method org.bouncycastle.asn1.ASN1BitString org.bouncycastle.asn1.x509.TBSCertificate::getIssuerUniqueId()</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method org.bouncycastle.asn1.DERBitString org.bouncycastle.asn1.x509.TBSCertificate::getSubjectUniqueId()</old>
                  <new>method org.bouncycastle.asn1.ASN1BitString org.bouncycastle.asn1.x509.TBSCertificate::getSubjectUniqueId()</new>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method void org.bouncycastle.asn1.DERBitString::&lt;init&gt;(byte, int)</old>
                  <new>method void org.bouncycastle.asn1.DERBitString::&lt;init&gt;(byte, int)</new>
                  <oldVisibility>protected</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityReduced</code>
                  <old>method void org.bouncycastle.asn1.ocsp.ResponseBytes::&lt;init&gt;(org.bouncycastle.asn1.ASN1Sequence)</old>
                  <new>method void org.bouncycastle.asn1.ocsp.ResponseBytes::&lt;init&gt;(org.bouncycastle.asn1.ASN1Sequence)</new>
                  <oldVisibility>public</oldVisibility>
                  <newVisibility>private</newVisibility>
                  <justification>Necessary compatibility break for BouncyCastle upgrade</justification>
                </item>
                <!-- Removal of "@SuppressJava6Requirement" annocation from classes and methods. -->
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.channel.ChannelException::&lt;init&gt;(java.lang.String, java.lang.Throwable, boolean)</old>
                  <new>method void io.netty.channel.ChannelException::&lt;init&gt;(java.lang.String, java.lang.Throwable, boolean)</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "uses Java 7+ RuntimeException.&lt;init&gt;(String, Throwable, boolean, boolean) but is guarded by version checks")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>class io.netty.channel.socket.nio.NioChannelOption&lt;T&gt;</old>
                  <new>class io.netty.channel.socket.nio.NioChannelOption&lt;T&gt;</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage explicit by the user")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method io.netty.channel.ChannelFuture io.netty.channel.socket.nio.NioDatagramChannel::block(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress, io.netty.channel.ChannelPromise)</old>
                  <new>method io.netty.channel.ChannelFuture io.netty.channel.socket.nio.NioDatagramChannel::block(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress, io.netty.channel.ChannelPromise)</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method io.netty.channel.ChannelFuture io.netty.channel.socket.nio.NioDatagramChannel::joinGroup(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress, io.netty.channel.ChannelPromise)</old>
                  <new>method io.netty.channel.ChannelFuture io.netty.channel.socket.nio.NioDatagramChannel::joinGroup(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress, io.netty.channel.ChannelPromise)</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method io.netty.channel.ChannelFuture io.netty.channel.socket.nio.NioDatagramChannel::leaveGroup(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress, io.netty.channel.ChannelPromise)</old>
                  <new>method io.netty.channel.ChannelFuture io.netty.channel.socket.nio.NioDatagramChannel::leaveGroup(java.net.InetAddress, java.net.NetworkInterface, java.net.InetAddress, io.netty.channel.ChannelPromise)</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.channel.socket.nio.NioServerSocketChannel::doBind(java.net.SocketAddress) throws java.lang.Exception</old>
                  <new>method void io.netty.channel.socket.nio.NioServerSocketChannel::doBind(java.net.SocketAddress) throws java.lang.Exception</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.channel.socket.nio.NioSocketChannel::doShutdownOutput() throws java.lang.Exception</old>
                  <new>method void io.netty.channel.socket.nio.NioSocketChannel::doShutdownOutput() throws java.lang.Exception</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method javax.net.ssl.SSLParameters io.netty.handler.ssl.ReferenceCountedOpenSslEngine::getSSLParameters() @ io.netty.handler.ssl.OpenSslEngine</old>
                  <new>method javax.net.ssl.SSLParameters io.netty.handler.ssl.ReferenceCountedOpenSslEngine::getSSLParameters() @ io.netty.handler.ssl.OpenSslEngine</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.handler.ssl.ReferenceCountedOpenSslEngine::setSSLParameters(javax.net.ssl.SSLParameters) @ io.netty.handler.ssl.OpenSslEngine</old>
                  <new>method void io.netty.handler.ssl.ReferenceCountedOpenSslEngine::setSSLParameters(javax.net.ssl.SSLParameters) @ io.netty.handler.ssl.OpenSslEngine</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method javax.net.ssl.SSLParameters io.netty.handler.ssl.ReferenceCountedOpenSslEngine::getSSLParameters()</old>
                  <new>method javax.net.ssl.SSLParameters io.netty.handler.ssl.ReferenceCountedOpenSslEngine::getSSLParameters()</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.handler.ssl.ReferenceCountedOpenSslEngine::setSSLParameters(javax.net.ssl.SSLParameters)</old>
                  <new>method void io.netty.handler.ssl.ReferenceCountedOpenSslEngine::setSSLParameters(javax.net.ssl.SSLParameters)</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Usage guarded by java version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.handler.ssl.util.LazyX509Certificate::verify(java.security.PublicKey, java.security.Provider) throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.SignatureException</old>
                  <new>method void io.netty.handler.ssl.util.LazyX509Certificate::verify(java.security.PublicKey, java.security.Provider) throws java.security.cert.CertificateException, java.security.NoSuchAlgorithmException, java.security.InvalidKeyException, java.security.SignatureException</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "Can only be called from Java8 as class is package-private")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.annotation.removed</code>
                  <old>method void io.netty.channel.socket.nio.NioDomainSocketChannel::doShutdownOutput() throws java.lang.Exception</old>
                  <new>method void io.netty.channel.socket.nio.NioDomainSocketChannel::doShutdownOutput() throws java.lang.Exception</new>
                  <annotation>@io.netty.util.internal.SuppressJava6Requirement(reason = "guarded by version check")</annotation>
                  <justification>Java baseline version changed.</justification>
                </item>
                <!-- Changes necessary for upgrading com.google.protobuf:protobuf-java from 2.6.1 to 3.16.3 -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.AbstractMessage.BuilderParent</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.AbstractMessageLite&lt;MessageType extends com.google.protobuf.AbstractMessageLite&lt;MessageType, BuilderType&gt;, BuilderType extends com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType, BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method com.google.protobuf.ByteString com.google.protobuf.ByteString::concat(com.google.protobuf.ByteString)</old>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.ByteString::concat(com.google.protobuf.ByteString)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.ByteString::copyTo(byte[], int, int, int)</old>
                  <new>method void com.google.protobuf.ByteString::copyTo(byte[], int, int, int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method boolean com.google.protobuf.ByteString::endsWith(com.google.protobuf.ByteString)</old>
                  <new>method boolean com.google.protobuf.ByteString::endsWith(com.google.protobuf.ByteString)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method int com.google.protobuf.ByteString::hashCode()</old>
                  <new>method int com.google.protobuf.ByteString::hashCode()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method boolean com.google.protobuf.ByteString::isEmpty()</old>
                  <new>method boolean com.google.protobuf.ByteString::isEmpty()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method int com.google.protobuf.ByteString::peekCachedHashCode()</old>
                  <new>method int com.google.protobuf.ByteString::peekCachedHashCode()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method boolean com.google.protobuf.ByteString::startsWith(com.google.protobuf.ByteString)</old>
                  <new>method boolean com.google.protobuf.ByteString::startsWith(com.google.protobuf.ByteString)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method com.google.protobuf.ByteString com.google.protobuf.ByteString::substring(int)</old>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.ByteString::substring(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method byte[] com.google.protobuf.ByteString::toByteArray()</old>
                  <new>method byte[] com.google.protobuf.ByteString::toByteArray()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method java.lang.String com.google.protobuf.ByteString::toString()</old>
                  <new>method java.lang.String com.google.protobuf.ByteString::toString()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method java.lang.String com.google.protobuf.ByteString::toString(java.lang.String) throws java.io.UnsupportedEncodingException</old>
                  <new>method java.lang.String com.google.protobuf.ByteString::toString(java.lang.String) throws java.io.UnsupportedEncodingException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method java.lang.String com.google.protobuf.ByteString::toString(java.nio.charset.Charset)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.abstractMethodAdded</code>
                  <new>method java.lang.String com.google.protobuf.ByteString::toStringInternal(java.nio.charset.Charset)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method java.lang.String com.google.protobuf.ByteString::toStringUtf8()</old>
                  <new>method java.lang.String com.google.protobuf.ByteString::toStringUtf8()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::checkLastTagWas(int) throws com.google.protobuf.InvalidProtocolBufferException</old>
                  <new>method void com.google.protobuf.CodedInputStream::checkLastTagWas(int) throws com.google.protobuf.InvalidProtocolBufferException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::enableAliasing(boolean)</old>
                  <new>method void com.google.protobuf.CodedInputStream::enableAliasing(boolean)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::getBytesUntilLimit()</old>
                  <new>method int com.google.protobuf.CodedInputStream::getBytesUntilLimit()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::getLastTag()</old>
                  <new>method int com.google.protobuf.CodedInputStream::getLastTag()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::getTotalBytesRead()</old>
                  <new>method int com.google.protobuf.CodedInputStream::getTotalBytesRead()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method boolean com.google.protobuf.CodedInputStream::isAtEnd() throws java.io.IOException</old>
                  <new>method boolean com.google.protobuf.CodedInputStream::isAtEnd() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method com.google.protobuf.CodedInputStream com.google.protobuf.CodedInputStream::newInstance(com.google.protobuf.LiteralByteString)</old>
                  <new>method com.google.protobuf.CodedInputStream com.google.protobuf.CodedInputStream::newInstance(java.lang.Iterable&lt;java.nio.ByteBuffer&gt;)</new>
                  <oldVisibility>package</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::popLimit(int)</old>
                  <new>method void com.google.protobuf.CodedInputStream::popLimit(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::pushLimit(int) throws com.google.protobuf.InvalidProtocolBufferException</old>
                  <new>method int com.google.protobuf.CodedInputStream::pushLimit(int) throws com.google.protobuf.InvalidProtocolBufferException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method boolean com.google.protobuf.CodedInputStream::readBool() throws java.io.IOException</old>
                  <new>method boolean com.google.protobuf.CodedInputStream::readBool() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method byte[] com.google.protobuf.CodedInputStream::readByteArray() throws java.io.IOException</old>
                  <new>method byte[] com.google.protobuf.CodedInputStream::readByteArray() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method java.nio.ByteBuffer com.google.protobuf.CodedInputStream::readByteBuffer() throws java.io.IOException</old>
                  <new>method java.nio.ByteBuffer com.google.protobuf.CodedInputStream::readByteBuffer() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method com.google.protobuf.ByteString com.google.protobuf.CodedInputStream::readBytes() throws java.io.IOException</old>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.CodedInputStream::readBytes() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method double com.google.protobuf.CodedInputStream::readDouble() throws java.io.IOException</old>
                  <new>method double com.google.protobuf.CodedInputStream::readDouble() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readEnum() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readEnum() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readFixed32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readFixed32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readFixed64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readFixed64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method float com.google.protobuf.CodedInputStream::readFloat() throws java.io.IOException</old>
                  <new>method float com.google.protobuf.CodedInputStream::readFloat() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::readGroup(int, com.google.protobuf.MessageLite.Builder, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedInputStream::readGroup(int, com.google.protobuf.MessageLite.Builder, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method &lt;T extends com.google.protobuf.MessageLite&gt; T com.google.protobuf.CodedInputStream::readGroup(int, com.google.protobuf.Parser&lt;T&gt;, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</old>
                  <new>method &lt;T extends com.google.protobuf.MessageLite&gt; T com.google.protobuf.CodedInputStream::readGroup(int, com.google.protobuf.Parser&lt;T&gt;, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readInt32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readInt32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readInt64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readInt64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::readMessage(com.google.protobuf.MessageLite.Builder, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedInputStream::readMessage(com.google.protobuf.MessageLite.Builder, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method &lt;T extends com.google.protobuf.MessageLite&gt; T com.google.protobuf.CodedInputStream::readMessage(com.google.protobuf.Parser&lt;T&gt;, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</old>
                  <new>method &lt;T extends com.google.protobuf.MessageLite&gt; T com.google.protobuf.CodedInputStream::readMessage(com.google.protobuf.Parser&lt;T&gt;, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method byte com.google.protobuf.CodedInputStream::readRawByte() throws java.io.IOException</old>
                  <new>method byte com.google.protobuf.CodedInputStream::readRawByte() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method byte[] com.google.protobuf.CodedInputStream::readRawBytes(int) throws java.io.IOException</old>
                  <new>method byte[] com.google.protobuf.CodedInputStream::readRawBytes(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readRawLittleEndian32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readRawLittleEndian32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readRawLittleEndian64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readRawLittleEndian64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readRawVarint32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readRawVarint32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readRawVarint64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readRawVarint64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readSFixed32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readSFixed32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readSFixed64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readSFixed64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readSInt32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readSInt32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readSInt64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readSInt64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method java.lang.String com.google.protobuf.CodedInputStream::readString() throws java.io.IOException</old>
                  <new>method java.lang.String com.google.protobuf.CodedInputStream::readString() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method java.lang.String com.google.protobuf.CodedInputStream::readStringRequireUtf8() throws java.io.IOException</old>
                  <new>method java.lang.String com.google.protobuf.CodedInputStream::readStringRequireUtf8() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readTag() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readTag() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedInputStream::readUInt32() throws java.io.IOException</old>
                  <new>method int com.google.protobuf.CodedInputStream::readUInt32() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method long com.google.protobuf.CodedInputStream::readUInt64() throws java.io.IOException</old>
                  <new>method long com.google.protobuf.CodedInputStream::readUInt64() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::readUnknownGroup(int, com.google.protobuf.MessageLite.Builder) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedInputStream::readUnknownGroup(int, com.google.protobuf.MessageLite.Builder) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::resetSizeCounter()</old>
                  <new>method void com.google.protobuf.CodedInputStream::resetSizeCounter()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method int com.google.protobuf.CodedInputStream::setRecursionLimit(int)</old>
                  <new>method int com.google.protobuf.CodedInputStream::setRecursionLimit(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method int com.google.protobuf.CodedInputStream::setSizeLimit(int)</old>
                  <new>method int com.google.protobuf.CodedInputStream::setSizeLimit(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method boolean com.google.protobuf.CodedInputStream::skipField(int) throws java.io.IOException</old>
                  <new>method boolean com.google.protobuf.CodedInputStream::skipField(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method boolean com.google.protobuf.CodedInputStream::skipField(int, com.google.protobuf.CodedOutputStream) throws java.io.IOException</old>
                  <new>method boolean com.google.protobuf.CodedInputStream::skipField(int, com.google.protobuf.CodedOutputStream) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::skipMessage() throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedInputStream::skipMessage() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::skipMessage(com.google.protobuf.CodedOutputStream) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedInputStream::skipMessage(com.google.protobuf.CodedOutputStream) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedInputStream::skipRawBytes(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedInputStream::skipRawBytes(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nowAbstract</code>
                  <old>class com.google.protobuf.CodedInputStream</old>
                  <new>class com.google.protobuf.CodedInputStream</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removedWithConstant</code>
                  <old>field com.google.protobuf.CodedOutputStream.LITTLE_ENDIAN_64_SIZE</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::checkNoSpaceLeft()</old>
                  <new>method void com.google.protobuf.CodedOutputStream::checkNoSpaceLeft()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method int com.google.protobuf.CodedOutputStream::computeUnknownGroupSize(int, com.google.protobuf.MessageLite)</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method int com.google.protobuf.CodedOutputStream::computeUnknownGroupSizeNoTag(com.google.protobuf.MessageLite)</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::flush() throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::flush() throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedOutputStream::getTotalBytesWritten()</old>
                  <new>method int com.google.protobuf.CodedOutputStream::getTotalBytesWritten()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method int com.google.protobuf.CodedOutputStream::spaceLeft()</old>
                  <new>method int com.google.protobuf.CodedOutputStream::spaceLeft()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.abstractMethodAdded</code>
                  <new>method void com.google.protobuf.CodedOutputStream::write(byte) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.abstractMethodAdded</code>
                  <new>method void com.google.protobuf.CodedOutputStream::write(byte[], int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.abstractMethodAdded</code>
                  <new>method void com.google.protobuf.CodedOutputStream::write(java.nio.ByteBuffer) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeBool(int, boolean) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeBool(int, boolean) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeBoolNoTag(boolean) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeBoolNoTag(boolean) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeByteArray(int, byte[]) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeByteArray(int, byte[]) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeByteArray(int, byte[], int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeByteArray(int, byte[], int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeByteArrayNoTag(byte[]) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeByteArrayNoTag(byte[]) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityReduced</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeByteArrayNoTag(byte[], int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeByteArrayNoTag(byte[], int, int) throws java.io.IOException</new>
                  <oldVisibility>public</oldVisibility>
                  <newVisibility>package</newVisibility>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeByteBuffer(int, java.nio.ByteBuffer) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeByteBuffer(int, java.nio.ByteBuffer) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeByteBufferNoTag(java.nio.ByteBuffer) throws java.io.IOException</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeBytes(int, com.google.protobuf.ByteString) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeBytes(int, com.google.protobuf.ByteString) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeBytesNoTag(com.google.protobuf.ByteString) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeBytesNoTag(com.google.protobuf.ByteString) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeDouble(int, double) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeDouble(int, double) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeDoubleNoTag(double) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeDoubleNoTag(double) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeEnum(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeEnum(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeEnumNoTag(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeEnumNoTag(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeFixed32(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeFixed32(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeFixed32NoTag(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeFixed32NoTag(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeFixed64(int, long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeFixed64(int, long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeFixed64NoTag(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeFixed64NoTag(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeFloat(int, float) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeFloat(int, float) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeFloatNoTag(float) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeFloatNoTag(float) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeGroup(int, com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeGroup(int, com.google.protobuf.MessageLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeGroupNoTag(com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeGroupNoTag(com.google.protobuf.MessageLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeInt32(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeInt32(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeInt32NoTag(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeInt32NoTag(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeInt64(int, long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeInt64(int, long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeInt64NoTag(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeInt64NoTag(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.abstractMethodAdded</code>
                  <new>method void com.google.protobuf.CodedOutputStream::writeLazy(byte[], int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.abstractMethodAdded</code>
                  <new>method void com.google.protobuf.CodedOutputStream::writeLazy(java.nio.ByteBuffer) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeMessage(int, com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeMessage(int, com.google.protobuf.MessageLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeMessageNoTag(com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeMessageNoTag(com.google.protobuf.MessageLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeMessageSetExtension(int, com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeMessageSetExtension(int, com.google.protobuf.MessageLite) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawByte(byte) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawByte(byte) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawByte(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawByte(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawBytes(byte[]) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawBytes(byte[]) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawBytes(byte[], int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawBytes(byte[], int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawBytes(com.google.protobuf.ByteString) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawBytes(com.google.protobuf.ByteString) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawBytes(java.nio.ByteBuffer) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawBytes(java.nio.ByteBuffer) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawBytes(com.google.protobuf.ByteString, int, int) throws java.io.IOException</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawLittleEndian32(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawLittleEndian32(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawLittleEndian64(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawLittleEndian64(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawMessageSetExtension(int, com.google.protobuf.ByteString) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawMessageSetExtension(int, com.google.protobuf.ByteString) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawVarint32(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawVarint32(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeRawVarint64(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeRawVarint64(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSFixed32(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSFixed32(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSFixed32NoTag(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSFixed32NoTag(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSFixed64(int, long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSFixed64(int, long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSFixed64NoTag(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSFixed64NoTag(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSInt32(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSInt32(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSInt32NoTag(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSInt32NoTag(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSInt64(int, long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSInt64(int, long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowFinal</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeSInt64NoTag(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeSInt64NoTag(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeString(int, java.lang.String) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeString(int, java.lang.String) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeStringNoTag(java.lang.String) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeStringNoTag(java.lang.String) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeTag(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeTag(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeUInt32(int, int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeUInt32(int, int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeUInt32NoTag(int) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeUInt32NoTag(int) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeUInt64(int, long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeUInt64(int, long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeUInt64NoTag(long) throws java.io.IOException</old>
                  <new>method void com.google.protobuf.CodedOutputStream::writeUInt64NoTag(long) throws java.io.IOException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeUnknownGroup(int, com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method void com.google.protobuf.CodedOutputStream::writeUnknownGroupNoTag(com.google.protobuf.MessageLite) throws java.io.IOException</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nowAbstract</code>
                  <old>class com.google.protobuf.CodedOutputStream</old>
                  <new>class com.google.protobuf.CodedOutputStream</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange.Builder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange</old>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRange</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.ExtensionRangeOptions com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRangeOrBuilder::getOptions()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.ExtensionRangeOptionsOrBuilder com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRangeOrBuilder::getOptionsOrBuilder()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.DescriptorProto.ExtensionRangeOrBuilder::hasOptions()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto.ReservedRange</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.DescriptorProto.ReservedRangeOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.DescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.DescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.DescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.DescriptorProto.Builder com.google.protobuf.DescriptorProtos.DescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.DescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedName(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedNameBytes(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method int com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedNameCount()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;java.lang.String&gt; com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedNameList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ReservedRange com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedRange(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method int com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedRangeCount()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;com.google.protobuf.DescriptorProtos.DescriptorProto.ReservedRange&gt; com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedRangeList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.DescriptorProto.ReservedRangeOrBuilder com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedRangeOrBuilder(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;? extends com.google.protobuf.DescriptorProtos.DescriptorProto.ReservedRangeOrBuilder&gt; com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder::getReservedRangeOrBuilderList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto.EnumReservedRange</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.EnumDescriptorProto.EnumReservedRangeOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.EnumDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.EnumDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.EnumDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedName(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedNameBytes(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method int com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedNameCount()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;java.lang.String&gt; com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedNameList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.EnumReservedRange com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedRange(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method int com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedRangeCount()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;com.google.protobuf.DescriptorProtos.EnumDescriptorProto.EnumReservedRange&gt; com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedRangeList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.EnumDescriptorProto.EnumReservedRangeOrBuilder com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedRangeOrBuilder(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;? extends com.google.protobuf.DescriptorProtos.EnumDescriptorProto.EnumReservedRangeOrBuilder&gt; com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder::getReservedRangeOrBuilderList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.EnumOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.EnumOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.EnumOptions.Builder com.google.protobuf.DescriptorProtos.EnumOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto.Builder com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.EnumValueOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.EnumValueOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.EnumValueOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.EnumValueOptions.Builder com.google.protobuf.DescriptorProtos.EnumValueOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.EnumValueOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.ExtensionRangeOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.ExtensionRangeOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.FieldDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.FieldDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.FieldDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FieldDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder::getJsonName()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder::getJsonNameBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder::getProto3Optional()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder::hasJsonName()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder::hasProto3Optional()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::clearExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method java.lang.String com.google.protobuf.DescriptorProtos.FieldOptions.Builder::getExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FieldOptions.Builder::getExperimentalMapKeyBytes()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method boolean com.google.protobuf.DescriptorProtos.FieldOptions.Builder::hasExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::setExperimentalMapKey(java.lang.String)</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::setExperimentalMapKeyBytes(com.google.protobuf.ByteString)</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>enum com.google.protobuf.DescriptorProtos.FieldOptions.JSType</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.removedWithConstant</code>
                  <old>field com.google.protobuf.DescriptorProtos.FieldOptions.EXPERIMENTAL_MAP_KEY_FIELD_NUMBER</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.FieldOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.FieldOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method java.lang.String com.google.protobuf.DescriptorProtos.FieldOptions::getExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FieldOptions::getExperimentalMapKeyBytes()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method boolean com.google.protobuf.DescriptorProtos.FieldOptions::hasExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FieldOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.FieldOptions.Builder com.google.protobuf.DescriptorProtos.FieldOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FieldOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.FieldOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method java.lang.String com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder::getExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder::getExperimentalMapKeyBytes()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.FieldOptions.JSType com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder::getJstype()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method boolean com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder::hasExperimentalMapKey()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder::hasJstype()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.FileDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.FileDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.FileDescriptorProto.Builder com.google.protobuf.DescriptorProtos.FileDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.FileOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.FileOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.FileOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.FileOptions.Builder com.google.protobuf.DescriptorProtos.FileOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.FileOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getCcEnableArenas()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getCsharpNamespace()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getCsharpNamespaceBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getObjcClassPrefix()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getObjcClassPrefixBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpClassPrefix()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpClassPrefixBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpGenericServices()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpMetadataNamespace()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpMetadataNamespaceBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpNamespace()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getPhpNamespaceBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getRubyPackage()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getRubyPackageBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getSwiftPrefix()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::getSwiftPrefixBytes()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasCcEnableArenas()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasCsharpNamespace()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasObjcClassPrefix()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasPhpClassPrefix()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasPhpGenericServices()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasPhpMetadataNamespace()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasPhpNamespace()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasRubyPackage()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder::hasSwiftPrefix()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.MessageOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.MessageOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MessageOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MessageOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MessageOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MessageOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.MessageOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.MessageOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.MessageOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.MessageOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.MessageOptions.Builder com.google.protobuf.DescriptorProtos.MessageOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MessageOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.MessageOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MessageOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.MessageOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder::getMapEntry()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder::hasMapEntry()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.MethodDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.MethodDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.MethodDescriptorProto.Builder com.google.protobuf.DescriptorProtos.MethodDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MethodDescriptorProtoOrBuilder::getClientStreaming()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MethodDescriptorProtoOrBuilder::getServerStreaming()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MethodDescriptorProtoOrBuilder::hasClientStreaming()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MethodDescriptorProtoOrBuilder::hasServerStreaming()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>enum com.google.protobuf.DescriptorProtos.MethodOptions.IdempotencyLevel</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.MethodOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.MethodOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.MethodOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.MethodOptions.Builder com.google.protobuf.DescriptorProtos.MethodOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.MethodOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.MethodOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.MethodOptions.IdempotencyLevel com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder::getIdempotencyLevel()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder::hasIdempotencyLevel()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.OneofDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.OneofDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.OneofDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.OneofDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.OneofDescriptorProto.Builder com.google.protobuf.DescriptorProtos.OneofDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.OneofOptions com.google.protobuf.DescriptorProtos.OneofDescriptorProtoOrBuilder::getOptions()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.DescriptorProtos.OneofOptionsOrBuilder com.google.protobuf.DescriptorProtos.OneofDescriptorProtoOrBuilder::getOptionsOrBuilder()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method boolean com.google.protobuf.DescriptorProtos.OneofDescriptorProtoOrBuilder::hasOptions()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.OneofOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.OneofOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceDescriptorProto::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceDescriptorProto::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.ServiceDescriptorProto.Builder com.google.protobuf.DescriptorProtos.ServiceDescriptorProto::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.ExtendableBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessage.ExtendableMessage, BuilderType extends com.google.protobuf.GeneratedMessage.ExtendableBuilder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceOptions.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.ServiceOptions.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.ServiceOptions.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceOptions::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.ServiceOptions::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.ServiceOptions.Builder com.google.protobuf.DescriptorProtos.ServiceOptions::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.ServiceOptions</old>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceOptions</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; Type com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtension(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;, int) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; int com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::getExtensionCount(com.google.protobuf.ExtensionLite&lt;MessageType, java.util.List&lt;Type&gt;&gt;) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method &lt;Type&gt; boolean com.google.protobuf.GeneratedMessageV3.ExtendableMessageOrBuilder&lt;MessageType extends com.google.protobuf.GeneratedMessageV3.ExtendableMessage&gt;::hasExtension(com.google.protobuf.ExtensionLite&lt;MessageType, Type&gt;) @ com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location</old>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo.Location</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.lang.String com.google.protobuf.DescriptorProtos.SourceCodeInfo.LocationOrBuilder::getLeadingDetachedComments(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.ByteString com.google.protobuf.DescriptorProtos.SourceCodeInfo.LocationOrBuilder::getLeadingDetachedCommentsBytes(int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method int com.google.protobuf.DescriptorProtos.SourceCodeInfo.LocationOrBuilder::getLeadingDetachedCommentsCount()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method java.util.List&lt;java.lang.String&gt; com.google.protobuf.DescriptorProtos.SourceCodeInfo.LocationOrBuilder::getLeadingDetachedCommentsList()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.SourceCodeInfo.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.SourceCodeInfo.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.SourceCodeInfo::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.SourceCodeInfo.Builder com.google.protobuf.DescriptorProtos.SourceCodeInfo::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.SourceCodeInfo</old>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeErasureChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet) @ com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>method com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</old>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart</old>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption.NamePart</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.nowFinal</code>
                  <old>field com.google.protobuf.DescriptorProtos.UninterpretedOption.PARSER</old>
                  <new>field com.google.protobuf.DescriptorProtos.UninterpretedOption.PARSER</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method com.google.protobuf.GeneratedMessage.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption::internalGetFieldAccessorTable()</old>
                  <new>method com.google.protobuf.GeneratedMessageV3.FieldAccessorTable com.google.protobuf.DescriptorProtos.UninterpretedOption::internalGetFieldAccessorTable()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption::newBuilderForType(===com.google.protobuf.GeneratedMessage.BuilderParent===)</old>
                  <new>parameter com.google.protobuf.DescriptorProtos.UninterpretedOption.Builder com.google.protobuf.DescriptorProtos.UninterpretedOption::newBuilderForType(===com.google.protobuf.GeneratedMessageV3.BuilderParent===)</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.noLongerInheritsFromClass</code>
                  <old>class com.google.protobuf.DescriptorProtos.UninterpretedOption</old>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>enum com.google.protobuf.Descriptors.FileDescriptor.Syntax</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method com.google.protobuf.Descriptors.FileDescriptor com.google.protobuf.Descriptors.FileDescriptor::buildFrom(com.google.protobuf.DescriptorProtos.FileDescriptorProto, com.google.protobuf.Descriptors.FileDescriptor[], boolean) throws com.google.protobuf.Descriptors.DescriptorValidationException</old>
                  <new>method com.google.protobuf.Descriptors.FileDescriptor com.google.protobuf.Descriptors.FileDescriptor::buildFrom(com.google.protobuf.DescriptorProtos.FileDescriptorProto, com.google.protobuf.Descriptors.FileDescriptor[], boolean) throws com.google.protobuf.Descriptors.DescriptorValidationException</new>
                  <oldVisibility>private</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.nowAbstract</code>
                  <old>method com.google.protobuf.Extension.ExtensionType com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;::getExtensionType()</old>
                  <new>method com.google.protobuf.Extension.ExtensionType com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;::getExtensionType()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChangedCovariantly</code>
                  <old>method com.google.protobuf.MessageLite com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;::getMessageDefaultInstance()</old>
                  <new>method com.google.protobuf.Message com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;::getMessageDefaultInstance()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</old>
                  <new>class com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</new>
                  <superClass>com.google.protobuf.ExtensionLite&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</superClass>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.ExtensionLite&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.finalMethodAddedToNonFinalClass</code>
                  <new>method void com.google.protobuf.ExtensionRegistryLite::add(com.google.protobuf.ExtensionLite&lt;?, ?&gt;)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;ContainingType extends com.google.protobuf.Message, Type&gt;</old>
                  <new>class com.google.protobuf.GeneratedMessage.GeneratedExtension&lt;ContainingType extends com.google.protobuf.Message, Type&gt;</new>
                  <superClass>com.google.protobuf.ExtensionLite&lt;ContainingType extends com.google.protobuf.Message, Type&gt;</superClass>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonFinalClassInheritsFromNewClass</code>
                  <old>class com.google.protobuf.GeneratedMessageLite.GeneratedExtension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</old>
                  <new>class com.google.protobuf.GeneratedMessageLite.GeneratedExtension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</new>
                  <superClass>com.google.protobuf.ExtensionLite&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</superClass>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.GeneratedMessageV3</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.BooleanList</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.DoubleList</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.FloatList</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.IntList</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.LongList</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method com.google.protobuf.ExtensionRegistryLite com.google.protobuf.LazyFieldLite::getExtensionRegistry()</old>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.MapEntry&lt;K, V&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.MapField&lt;K, V&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.Message.Builder com.google.protobuf.Message.Builder::getRepeatedFieldBuilder(com.google.protobuf.Descriptors.FieldDescriptor, int)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method com.google.protobuf.MessageLite.Builder com.google.protobuf.MessageLite.Builder::mergeFrom(com.google.protobuf.MessageLite)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonPublicPartOfAPI</code>
                  <new>interface com.google.protobuf.MutabilityOracle</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method MessageType com.google.protobuf.Parser&lt;MessageType&gt;::parseFrom(java.nio.ByteBuffer) throws com.google.protobuf.InvalidProtocolBufferException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.addedToInterface</code>
                  <new>method MessageType com.google.protobuf.Parser&lt;MessageType&gt;::parseFrom(java.nio.ByteBuffer, com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChangedCovariantly</code>
                  <old>method java.lang.Object java.lang.Object::clone() throws java.lang.CloneNotSupportedException @ com.google.protobuf.UnknownFieldSet.Field.Builder</old>
                  <new>method com.google.protobuf.UnknownFieldSet.Field.Builder com.google.protobuf.UnknownFieldSet.Field.Builder::clone()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.visibilityIncreased</code>
                  <old>method java.lang.Object java.lang.Object::clone() throws java.lang.CloneNotSupportedException @ com.google.protobuf.UnknownFieldSet.Field.Builder</old>
                  <new>method com.google.protobuf.UnknownFieldSet.Field.Builder com.google.protobuf.UnknownFieldSet.Field.Builder::clone()</new>
                  <oldVisibility>protected</oldVisibility>
                  <newVisibility>public</newVisibility>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.exception.checkedRemoved</code>
                  <old>method java.lang.Object java.lang.Object::clone() throws java.lang.CloneNotSupportedException @ com.google.protobuf.UnknownFieldSet.Field.Builder</old>
                  <new>method com.google.protobuf.UnknownFieldSet.Field.Builder com.google.protobuf.UnknownFieldSet.Field.Builder::clone()</new>
                  <exception>java.lang.CloneNotSupportedException</exception>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::addRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clear()</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::clear()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::clearField(com.google.protobuf.Descriptors.FieldDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::clearOneof(com.google.protobuf.Descriptors.OneofDescriptor)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::clone()</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::clone()</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[]) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(byte[]) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(com.google.protobuf.ByteString) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.ByteString) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(com.google.protobuf.CodedInputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.CodedInputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(com.google.protobuf.Message) @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.Message) @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.parameterTypeChanged</code>
                  <old>parameter BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(===java.io.InputStream===) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>parameter BuilderType com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType extends com.google.protobuf.AbstractMessageLite&lt;MessageType, BuilderType&gt;, BuilderType extends com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType, BuilderType&gt;&gt;::mergeFrom(===com.google.protobuf.MessageLite===) @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <parameterIndex>0</parameterIndex>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(java.io.InputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType extends com.google.protobuf.AbstractMessageLite&lt;MessageType, BuilderType&gt;, BuilderType extends com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType, BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.MessageLite) @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.exception.checkedRemoved</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(java.io.InputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType extends com.google.protobuf.AbstractMessageLite&lt;MessageType, BuilderType&gt;, BuilderType extends com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType, BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.MessageLite) @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <exception>java.io.IOException</exception>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.numberOfParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(java.io.InputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(java.io.InputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.exception.checkedAdded</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(java.io.InputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <exception>java.io.IOException</exception>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.exception.checkedRemoved</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(java.io.InputStream) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <exception>com.google.protobuf.InvalidProtocolBufferException</exception>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(com.google.protobuf.ByteString, com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.ByteString, com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(com.google.protobuf.CodedInputStream, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(com.google.protobuf.CodedInputStream, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(java.io.InputStream, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(java.io.InputStream, com.google.protobuf.ExtensionRegistryLite) throws java.io.IOException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.numberOfParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], int, int) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(byte[], com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], int, int) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(byte[], com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.numberOfParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], int, int, com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(byte[], int, int) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&gt;::mergeFrom(byte[], int, int, com.google.protobuf.ExtensionRegistryLite) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>method BuilderType com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.AbstractMessage.Builder&lt;BuilderType&gt;&gt;::mergeFrom(byte[], int, int) throws com.google.protobuf.InvalidProtocolBufferException @ com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::mergeUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::setField(com.google.protobuf.Descriptors.FieldDescriptor, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::setRepeatedField(com.google.protobuf.Descriptors.FieldDescriptor, int, java.lang.Object)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.method.returnTypeTypeParametersChanged</code>
                  <old>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet)</old>
                  <new>method BuilderType com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;::setUnknownFields(com.google.protobuf.UnknownFieldSet)</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.generics.formalTypeParameterChanged</code>
                  <old>class com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>class com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.superTypeTypeParametersChanged</code>
                  <old>class com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</old>
                  <new>class com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</new>
                  <oldSuperType>com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&gt;</oldSuperType>
                  <newSuperType>com.google.protobuf.AbstractMessage.Builder&lt;BuilderType extends com.google.protobuf.GeneratedMessage.Builder&lt;BuilderType&gt;&gt;</newSuperType>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.field.serialVersionUIDUnchanged</code>
                  <old>field com.google.protobuf.GeneratedMessage.serialVersionUID</old>
                  <new>field com.google.protobuf.GeneratedMessage.serialVersionUID</new>
                  <serialVersionUID>1</serialVersionUID>
                  <justification>Necessary for com.google.protobuf:protobuf-java upgrade.</justification>
                </item>

                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method io.netty.resolver.ResolvedAddressTypes io.netty.resolver.dns.DnsNameResolverBuilder::computeResolvedAddressTypes(io.netty.channel.socket.SocketProtocolFamily[])</old>
                  <justification>Ignore changes in Alpha releases</justification>
                </item>
                <!-- Issue 14228 -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.xml.XmlFrameDecoder</old>
                  <justification>Remove split io.netty.handler.codec.xml split package between netty-codec and netty-codec-xml</justification>
                </item>
                <!-- Issue -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator</old>
                  <justification>Remove io.netty.handler.ssl.JdkNpnApplicationProtocolNegotiator dropped</justification>
                </item>

                <!-- Protobuf moved to netty-codec-protobuf -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.protobuf.ProtobufDecoder</old>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.protobuf.ProtobufDecoderNano</old>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.protobuf.ProtobufEncoder</old>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.protobuf.ProtobufEncoderNano</old>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.protobuf.ProtobufVarint32FrameDecoder</old>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.protobuf.ProtobufVarint32LengthFieldPrepender</old>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.ByteString</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.CodedInputStream</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.CodedOutputStream</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.DescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.DescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.EnumDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.EnumDescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.EnumOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.EnumOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.EnumValueDescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.EnumValueOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.FieldDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.FieldDescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.FieldOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.FieldOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.FileDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions"</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.FileOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.MessageOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.MessageOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.MethodDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.MethodDescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.MethodOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.MethodOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.OneofDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.OneofDescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceDescriptorProto</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.ServiceDescriptorProtoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.ServiceOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.ServiceOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.SourceCodeInfo</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.SourceCodeInfoOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.UninterpretedOption</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.UninterpretedOptionOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.Descriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.DescriptorValidationException</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.EnumDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.EnumValueDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.FieldDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.MethodDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.FileDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.OneofDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Descriptors.ServiceDescriptor</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.Extension&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.ExtensionRegistry</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.ExtensionRegistryLite</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.EnumLite</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.EnumLiteMap&lt;T extends com.google.protobuf.Internal.EnumLite&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.InvalidProtocolBufferException</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.LazyFieldLite</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Message</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.MessageLite</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.MessageLiteOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Parser&lt;MessageType&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.ProtocolStringList</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.UninitializedMessageException</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.UnknownFieldSet</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>enum com.google.protobuf.WireFormat.FieldType</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>enum com.google.protobuf.WireFormat.JavaType</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.nano.CodedInputByteBufferNano</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.nano.CodedOutputByteBufferNano</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.nano.InvalidProtocolBufferNanoException</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.nano.MessageNano</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.EnumValueOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.FileOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.AbstractMessage.BuilderParent</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.AbstractMessageLite&lt;MessageType extends com.google.protobuf.AbstractMessageLite&lt;MessageType, BuilderType&gt;, BuilderType extends com.google.protobuf.AbstractMessageLite.Builder&lt;MessageType, BuilderType&gt;&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.ExtensionRangeOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.ExtensionRangeOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.DescriptorProtos.OneofOptions</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.OneofOptionsOrBuilder"</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.ExtensionLite&lt;ContainingType extends com.google.protobuf.MessageLite, Type&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.GeneratedMessageV3</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.BooleanList</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.DoubleList</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.FloatList</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.IntList</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.Internal.LongList</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.MapEntry&lt;K, V&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.google.protobuf.MapField&lt;K, V&gt;</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.MutabilityOracle</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface com.google.protobuf.DescriptorProtos.OneofOptionsOrBuilder</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.nonPublicPartOfAPI</code>
                  <new>interface com.google.protobuf.MutabilityOracle</new>
                  <justification>Protobuf moved to netty-codec-protobuf</justification>
                </item>

                <!-- Marshalling moved to netty-codec-marshalling -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.CompatibleMarshallingDecoder</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.CompatibleMarshallingEncoder</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.ContextBoundUnmarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.DefaultMarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.DefaultUnmarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.marshalling.MarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.MarshallingDecoder</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.MarshallingEncoder</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.ThreadLocalMarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.marshalling.ThreadLocalUnmarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.marshalling.UnmarshallerProvider</old>
                  <justification>Marshalling moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.Creator</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ByteInput</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ByteOutput</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ClassExternalizerFactory</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ClassResolver</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ClassTable</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ExceptionListener</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.Externalizer</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.Marshaller</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.MarshallerFactory</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class org.jboss.marshalling.MarshallingConfiguration</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ObjectResolver</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.ObjectTable</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.SerializabilityChecker</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.StreamHeader</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface org.jboss.marshalling.Unmarshaller</new>
                  <justification>Protobuf moved to netty-codec-marshalling</justification>
                </item>

                <!-- Compression moved to netty-codec-compression -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Brotli</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.BrotliDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.BrotliEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.BrotliOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Bzip2Decoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Bzip2Encoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.CompressionException</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.compression.CompressionOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.DecompressionException</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.DeflateOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.FastLzFrameDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.FastLzFrameEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.GzipOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.JZlibDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.JZlibEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.JdkZlibDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.JdkZlibEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Lz4FrameDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Lz4FrameEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Lz4XXHash32</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.LzfDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.LzfEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.LzmaFrameEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Snappy</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.SnappyFrameDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.SnappyFrameEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.SnappyFramedDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.SnappyFramedEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.SnappyOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.StandardCompressionOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.ZlibCodecFactory</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.ZlibDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.ZlibEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>enum io.netty.handler.codec.compression.ZlibWrapper</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.Zstd</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.ZstdDecoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.ZstdEncoder</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.compression.ZstdOptions</old>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>

                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>enum com.aayushatharva.brotli4j.encoder.Encoder.Mode</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class com.aayushatharva.brotli4j.encoder.Encoder.Parameters</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class net.jpountz.lz4.LZ4Compressor</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface net.jpountz.lz4.LZ4Decompressor</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class net.jpountz.lz4.LZ4Factory</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class net.jpountz.lz4.LZ4FastDecompressor</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>class net.jpountz.lz4.LZ4SafeDecompressor</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.externalClassExposedInAPI</code>
                  <new>interface net.jpountz.lz4.LZ4UnknownSizeDecompressor</new>
                  <justification>Compression moved to netty-codec-compression</justification>
                </item>

                <!-- Split package fix #14244 -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.ssl.ocsp.OcspClientHandler</old>
                  <justification>OcspClientHandler moved to netty-codec-ssl-ocsp</justification>
                </item>

                <item>
                  <ignore>true</ignore>
                  <code>java.method.removed</code>
                  <old>method io.netty.channel.ChannelFactory&lt;&amp; extends io.netty.channel.socket.DatagramChannel&gt; io.netty.resolver.dns.DnsNameResolverBuilder::channelFactory()</old>
                  <justification>Protected methods of a final class.</justification>
                </item>

                <!-- Move netty-codec classes to netty-codec-base -->
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.AsciiHeadersEncoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.ByteToMessageCodec&lt;I&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.ByteToMessageDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.CharSequenceValueConverter</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.CodecException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.CorruptedFrameException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DatagramPacketDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DatagramPacketEncoder&lt;M&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DateFormatter</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DecoderException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DecoderResult</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.DecoderResultProvider</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class </old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DefaultHeaders&lt;K, V, T extends io.netty.handler.codec.Headers&lt;K, V, T&gt;&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class </old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DefaultHeadersImpl&lt;K, V&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.DelimiterBasedFrameDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class </old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.Delimiters</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.EmptyHeaders&lt;K, V, T extends io.netty.handler.codec.Headers&lt;K, V, T&gt;&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.EncoderException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.FixedLengthFrameDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.Headers&lt;K, V, T extends io.netty.handler.codec.Headers&lt;K, V, T&gt;&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.HeadersUtils</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.LengthFieldBasedFrameDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.LengthFieldPrepender</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.LineBasedFrameDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.MessageAggregationException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.MessageAggregator&lt;I, S, C extends io.netty.buffer.ByteBufHolder, O extends io.netty.buffer.ByteBufHolder&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.MessageToByteEncoder&lt;I&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.MessageToMessageCodec&lt;INBOUND_IN, OUTBOUND_IN&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.MessageToMessageDecoder&lt;I&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.MessageToMessageEncoder&lt;I&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.PrematureChannelClosureException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.ProtocolDetectionResult&lt;T&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>enum io.netty.handler.codec.ProtocolDetectionState</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.ReplayingDecoder&lt;S&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.TooLongFrameException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.UnsupportedMessageTypeException</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.UnsupportedValueConverter&lt;V&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.ValueConverter&lt;T&gt;</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.base64.Base64</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.base64.Base64Decoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>enum io.netty.handler.codec.base64.Base64Dialect</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.base64.Base64Encoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.bytes.ByteArrayDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.bytes.ByteArrayEncoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.json.JsonObjectDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>interface io.netty.handler.codec.serialization.ClassResolver</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.serialization.ClassResolvers</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.serialization.CompatibleObjectEncoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.serialization.ObjectDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.serialization.ObjectDecoderInputStream</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.serialization.ObjectEncoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.serialization.ObjectEncoderOutputStream</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.string.LineEncoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.string.LineSeparator</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.string.StringDecoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
                <item>
                  <ignore>true</ignore>
                  <code>java.class.removed</code>
                  <old>class io.netty.handler.codec.string.StringEncoder</old>
                  <justification>Move netty-codec classes to netty-codec-base</justification>
                </item>
              </differences>
            </revapi.differences>
          </analysisConfiguration>
        </configuration>
        <executions>
          <execution>
            <id>api-check</id>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-enforcer-plugin</artifactId>
        <version>${enforcer.plugin.version}</version>
        <executions>
          <execution>
            <id>enforce-tools</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <requireJavaVersion>
                  <!-- Enforce JDK 1.8+ for compilation. -->
                  <!-- This is needed because of java.util.zip.Deflater and NIO UDP multicast. -->
                  <version>[1.8.0,)</version>
                </requireJavaVersion>
                <requireMavenVersion>
                  <version>[3.1.1,)</version>
                </requireMavenVersion>
                <requireProperty>
                  <regexMessage>
		     x86_64/AARCH64/RISCV64/PPCLE64/s390x_64/loongarch64 JDK must be used.
                  </regexMessage>
                  <property>os.detected.arch</property>
                  <regex>^(x86_64|aarch_64|riscv64|ppcle_64|s390_64|loongarch_64)$</regex>
                </requireProperty>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.13.0</version>
        <configuration>
          <compilerVersion>1.8</compilerVersion>
          <fork>true</fork>
          <source>${maven.compiler.source}</source>
          <target>${maven.compiler.target}</target>
          <release>${maven.compiler.release}</release>
          <debug>true</debug>
          <optimize>true</optimize>
          <showDeprecation>true</showDeprecation>
          <showWarnings>true</showWarnings>
          <compilerArgument>-Xlint:-options</compilerArgument>
          <!-- XXX: maven-release-plugin complains - MRELEASE-715 -->
          <!--
          <compilerArguments>
            <Xlint:-options />
            <Xlint:unchecked />
            <Xlint:deprecation />
          </compilerArguments>
          -->
          <meminitial>256m</meminitial>
          <maxmem>1024m</maxmem>
          <excludes>
            <exclude>**/package-info.java</exclude>
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>3.1.0</version>
        <executions>
          <execution>
            <id>check-style</id>
            <goals>
              <goal>check</goal>
            </goals>
            <phase>validate</phase>
            <configuration>
              <consoleOutput>true</consoleOutput>
              <logViolationsToConsole>true</logViolationsToConsole>
              <failsOnError>true</failsOnError>
              <failOnViolation>true</failOnViolation>
              <configLocation>io/netty/checkstyle.xml</configLocation>
              <sourceDirectories>
                <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
                <sourceDirectory>${project.build.testSourceDirectory}</sourceDirectory>
              </sourceDirectories>
            </configuration>
          </execution>
          <execution>
            <id>nohttp-checkstyle-validation</id>
            <phase>validate</phase>
            <configuration>
              <!-- skip>false</skip -->
              <configLocation>nohttp-checkstyle.xml</configLocation>
              <suppressionsLocation>nohttp-checkstyle-suppressions.xml</suppressionsLocation>
              <!-- propertyExpansion>main.basedir=${main.basedir}</propertyExpansion -->
              <encoding>UTF-8</encoding>
              <sourceDirectories>${basedir}</sourceDirectories>
              <includes>**/*</includes>
              <excludes>nohttp-checkstyle-suppressions.xml,**/.git/**/*,**/.idea/**/*,**/target/**/,**/.flattened-pom.xml,**/*.class</excludes>
            </configuration>
            <goals>
              <goal>check</goal>
            </goals>
            <inherited>false</inherited>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>com.puppycrawl.tools</groupId>
            <artifactId>checkstyle</artifactId>
            <version>8.29</version>
          </dependency>
          <dependency>
            <groupId>${project.groupId}</groupId>
            <artifactId>netty-build-common</artifactId>
            <version>${netty.build.version}</version>
          </dependency>
          <dependency>
            <groupId>io.spring.nohttp</groupId>
            <artifactId>nohttp-checkstyle</artifactId>
            <version>0.0.5.RELEASE</version>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>xml-maven-plugin</artifactId>
        <version>1.0.1</version>
        <executions>
          <execution>
            <id>check-style</id>
            <goals>
              <goal>check-format</goal>
            </goals>
            <phase>validate</phase>
          </execution>
        </executions>
        <configuration>
          <formatFileSets>
            <formatFileSet>
              <directory>${project.basedir}</directory>
              <includes>
                <include>**/pom.xml</include>
              </includes>
              <excludes>
                <exclude>**/target/**</exclude>
              </excludes>
            </formatFileSet>
          </formatFileSets>
          <useDefaultFormatFileSet>false</useDefaultFormatFileSet>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <includes>
            <include>**/*Test*.java</include>
            <include>**/*Benchmark*.java</include>
          </includes>
          <excludes>
            <exclude>**/Abstract*</exclude>
            <exclude>**/*TestUtil*</exclude>
          </excludes>
          <runOrder>random</runOrder>
          <systemPropertyVariables>
            <logback.configurationFile>${logging.config}</logback.configurationFile>
            <logLevel>${logging.logLevel}</logLevel>
            <!-- Used by ChannelHandlerMetadataUtil to create the recommended directory layout for native-image metadata -->
            <nativeImage.handlerMetadataGroupId>${project.groupId}</nativeImage.handlerMetadataGroupId>
            <nativeimage.handlerMetadataArtifactId>${project.artifactId}</nativeimage.handlerMetadataArtifactId>
          </systemPropertyVariables>
          <argLine>${argLine.common} ${argLine.printGC} ${argLine.leak} ${argLine.coverage} ${argLine.noUnsafe} ${argLine.jni} ${argLine.java9} ${argLine.javaProperties} -Dio.netty.bootstrap.extensions=serviceload</argLine>
          <properties>
            <property>
              <name>listener</name>
              <value>io.netty.build.junit.TimedOutTestsListener</value>
            </property>
          </properties>
          <skipTests>${skipTests}</skipTests>
          <jvm>${testJvm}</jvm>
           <!-- Ensure the whole stacktrace is preserved when an exception is thrown. See https://issues.apache.org/jira/browse/SUREFIRE-1457 -->
          <trimStackTrace>false</trimStackTrace>
        </configuration>
      </plugin>
      <!-- always produce osgi bundles -->
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>5.1.8</version>
        <executions>
          <execution>
            <id>generate-manifest</id>
            <phase>process-classes</phase>
            <goals>
              <goal>manifest</goal>
            </goals>
            <configuration>
              <supportedProjectTypes>
                <supportedProjectType>jar</supportedProjectType>
                <supportedProjectType>bundle</supportedProjectType>
              </supportedProjectTypes>
              <instructions>
                <Export-Package>${project.groupId}.*</Export-Package>
                <!-- enforce JVM vendor package as optional -->
                <Import-Package>sun.net.dns.*;resolution:=optional,sun.misc.*;resolution:=optional,sun.nio.ch;resolution:=optional,sun.security.*;resolution:=optional,org.bouncycastle.jcajce.provider;version="[1.0,2)";resolution:=optional,*</Import-Package>
                <!-- override "internal" private package convention -->
                <Private-Package>!*</Private-Package>
              </instructions>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>build-helper-maven-plugin</artifactId>
        <version>1.10</version>
        <executions>
          <execution>
            <id>parse-version</id>
            <goals>
              <goal>parse-version</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <artifactId>maven-source-plugin</artifactId>
        <version>3.2.0</version>
        <!-- Eclipse-related OSGi manifests
             See https://github.com/netty/netty/issues/3886
             More information: https://rajakannappan.blogspot.ie/2010/03/automating-eclipse-source-bundle.html -->
        <configuration>
          <archive>
            <manifestEntries>
              <Bundle-ManifestVersion>2</Bundle-ManifestVersion>
              <Bundle-Name>${project.name}</Bundle-Name>
              <Bundle-SymbolicName>${project.groupId}.${project.artifactId}.source</Bundle-SymbolicName>
              <Bundle-Vendor>${project.organization.name}</Bundle-Vendor>
              <Bundle-Version>${parsedVersion.osgiVersion}</Bundle-Version>
              <Eclipse-SourceBundle>${project.groupId}.${project.artifactId};version="${parsedVersion.osgiVersion}";roots:="."</Eclipse-SourceBundle>
            </manifestEntries>
          </archive>
        </configuration>

        <executions>
          <execution>
            <id>attach-sources</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>jar-no-fork</goal>
            </goals>
          </execution>
          <execution>
            <id>attach-test-sources</id>
            <phase>prepare-package</phase>
            <goals>
              <goal>test-jar-no-fork</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-javadoc-plugin</artifactId>
        <version>2.10.4</version>
        <configuration>
          <detectOfflineLinks>false</detectOfflineLinks>
          <breakiterator>true</breakiterator>
          <version>false</version>
          <author>false</author>
          <keywords>true</keywords>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.8.2</version>
        <configuration>
          <retryFailedDeploymentCount>10</retryFailedDeploymentCount>
          <skip>${skipDeploy}</skip>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-release-plugin</artifactId>
        <!-- Downgrade to 2.4.1 if release fails -->
        <version>2.5.3</version>
        <configuration>
          <useReleaseProfile>false</useReleaseProfile>
          <arguments>-P restricted-release,sonatype-oss-release,full</arguments>
          <autoVersionSubmodules>true</autoVersionSubmodules>
          <allowTimestampedSnapshots>false</allowTimestampedSnapshots>
          <tagNameFormat>netty-@{project.version}</tagNameFormat>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>org.apache.maven.scm</groupId>
            <artifactId>maven-scm-api</artifactId>
            <version>1.9.4</version>
          </dependency>
          <dependency>
            <groupId>org.apache.maven.scm</groupId>
            <artifactId>maven-scm-provider-gitexe</artifactId>
            <version>1.9.4</version>
          </dependency>
        </dependencies>
      </plugin>

      <!-- Ensure to put maven-antrun-plugin at the end of the plugin list
           so that they are run lastly in the same phase. -->
      <plugin>
        <artifactId>maven-antrun-plugin</artifactId>
        <executions>
          <!-- Generate the version properties for all artifacts. -->
          <execution>
            <id>write-version-properties</id>
            <phase>initialize</phase>
            <goals>
              <goal>run</goal>
            </goals>
            <configuration>
              <target>
                <taskdef resource="net/sf/antcontrib/antlib.xml" />

                <!-- Get the information about the latest commit -->
                <exec executable="git" outputproperty="gitOutput.lastCommit" resultproperty="gitExitCode.lastCommit" failonerror="false" failifexecutionfails="false">
                  <arg value="log" />
                  <arg value="-1" />
                  <arg value="--format=format:%h %H %cd" />
                  <arg value="--date=iso" />
                </exec>
                <propertyregex property="shortCommitHash" input="${gitOutput.lastCommit}" regexp="^([0-9a-f]+) .*$" select="\1" casesensitive="true" defaultValue="0" />
                <propertyregex property="longCommitHash" input="${gitOutput.lastCommit}" regexp="^[0-9a-f]+ ([0-9a-f]{40}) .*$" select="\1" casesensitive="true" defaultValue="0000000000000000000000000000000000000000" />
                <propertyregex property="commitDate" input="${gitOutput.lastCommit}" regexp="^[0-9a-f]+ [0-9a-f]{40} (.*)$" select="\1" casesensitive="true" defaultValue="1970-01-01 00:00:00 +0000" />

                <!-- Get the information abount whether the repository is clean or dirty -->
                <exec executable="git" outputproperty="gitOutput.repoStatus" resultproperty="gitExitCode.repoStatus" failonerror="false" failifexecutionfails="false">
                  <arg value="status" />
                  <arg value="--porcelain" />
                </exec>
                <if>
                  <equals arg2="0" arg1="${gitExitCode.repoStatus}" />
                  <then>
                    <if>
                      <equals arg2="" arg1="${gitOutput.repoStatus}" />
                      <then>
                        <property name="repoStatus" value="clean" />
                      </then>
                      <else>
                        <property name="repoStatus" value="dirty" />
                      </else>
                    </if>
                  </then>
                  <else>
                    <property name="repoStatus" value="unknown" />
                  </else>
                </if>

                <!-- Print the obtained commit information. -->
                <echo>Current commit: ${shortCommitHash} on ${commitDate}</echo>

                <!-- Generate the .properties file. -->
                <!--
                <property name="metaInfDir" value="${project.basedir}/src/main/resources/META-INF" />
                -->
                <property name="metaInfDir" value="${project.build.outputDirectory}/META-INF" />
                <property name="versionPropFile" value="${metaInfDir}/${project.groupId}.versions.properties" />
                <mkdir dir="${metaInfDir}" />
                <delete file="${versionPropFile}" quiet="true" />

                <propertyfile file="${versionPropFile}" comment="Generated by netty-parent/pom.xml">
                  <entry key="${project.artifactId}.version" value="${project.version}" />
                  <entry key="${project.artifactId}.buildDate" type="date" value="now" pattern="yyyy-MM-dd HH:mm:ss Z" />
                  <entry key="${project.artifactId}.commitDate" value="${commitDate}" />
                  <entry key="${project.artifactId}.shortCommitHash" value="${shortCommitHash}" />
                  <entry key="${project.artifactId}.longCommitHash" value="${longCommitHash}" />
                  <entry key="${project.artifactId}.repoStatus" value="${repoStatus}" />
                </propertyfile>
              </target>
            </configuration>
          </execution>
        </executions>
        <dependencies>
          <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.10.11</version>
          </dependency>
          <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant-launcher</artifactId>
            <version>1.9.7</version>
          </dependency>
          <dependency>
            <groupId>ant-contrib</groupId>
            <artifactId>ant-contrib</artifactId>
            <version>1.0b3</version>
            <exclusions>
              <exclusion>
                <groupId>ant</groupId>
                <artifactId>ant</artifactId>
              </exclusion>
            </exclusions>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-remote-resources-plugin</artifactId>
        <version>1.5</version>
      </plugin>
      <plugin>
        <groupId>de.thetaphi</groupId>
        <artifactId>forbiddenapis</artifactId>
        <version>2.2</version>
      </plugin>
    </plugins>

    <pluginManagement>
      <plugins>
        <!-- keep surefire and failsafe in sync -->
        <plugin>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>3.3.0</version>
        </plugin>
        <!-- keep surefire and failsafe in sync -->
        <plugin>
          <artifactId>maven-failsafe-plugin</artifactId>
          <version>3.3.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-clean-plugin</artifactId>
          <version>3.0.0</version>
        </plugin>
        <plugin>
          <artifactId>maven-resources-plugin</artifactId>
          <version>3.0.1</version>
          <executions>
            <execution>
              <id>default-testResources</id>
              <phase>process-test-resources</phase>
              <goals>
                <goal>testResources</goal>
              </goals>
              <configuration>
                <resources>
                  <resource>
                    <directory>${project.basedir}/src/test/resources</directory>
                  </resource>
                  <resource>
                    <directory>${project.build.outputDirectory}</directory>
                    <excludes>
                      <!--
-                       Exclude native files as these are already in the classes directory. This is needed as
-                       otherwise NativeLibraryLoader will fail to load the native lib as it detects duplicates on
-                       the classpath.
-                     -->
                      <exclude>META-INF/native/*.*</exclude>
                    </excludes>
                    <includes>
                      <!-- Include everything else -->
                      <include>*.*</include>
                    </includes>
                  </resource>
                </resources>
              </configuration>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>org.ops4j.pax.exam</groupId>
          <artifactId>maven-paxexam-plugin</artifactId>
          <version>1.2.4</version>
        </plugin>
        <plugin>
          <artifactId>maven-jar-plugin</artifactId>
          <version>3.0.2</version>
          <executions>
            <execution>
              <id>default-jar</id>
              <configuration>
                <archive>
                  <manifest>
                    <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
                    <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
                  </manifest>
                  <manifestEntries>
                    <Multi-Release>${multiReleaseJar}</Multi-Release>
                  </manifestEntries>
                  <index>true</index>
                  <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
                </archive>
              </configuration>
            </execution>
            <execution>
              <goals>
                <goal>test-jar</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.10</version>
        </plugin>
        <plugin>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>2.6</version>
        </plugin>
        <plugin>
          <artifactId>maven-jxr-plugin</artifactId>
          <version>3.1.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.8</version>
          <dependencies>
            <dependency>
              <groupId>ant-contrib</groupId>
              <artifactId>ant-contrib</artifactId>
              <version>1.0b3</version>
              <exclusions>
                <exclusion>
                  <groupId>ant</groupId>
                  <artifactId>ant</artifactId>
                </exclusion>
              </exclusions>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>build-helper-maven-plugin</artifactId>
          <version>1.10</version>
        </plugin>
        <plugin>
          <groupId>org.fusesource.hawtjni</groupId>
          <artifactId>hawtjni-maven-plugin</artifactId>
          <version>1.18</version>
        </plugin>
        <plugin>
          <groupId>kr.motd.maven</groupId>
          <artifactId>exec-maven-plugin</artifactId>
          <version>1.0.0.Final</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-shade-plugin</artifactId>
          <version>3.2.1</version>
        </plugin>
        <plugin>
          <groupId>io.github.dmlloyd.module-info</groupId>
          <artifactId>module-info</artifactId>
          <version>2.1</version>
          <executions>
            <execution>
              <id>module-info</id>
              <phase>process-classes</phase>
              <configuration>
                <moduleName>${javaModuleName}</moduleName>
                <outputDirectory>${project.build.outputDirectory}/META-INF/versions/11/</outputDirectory>
              </configuration>
              <goals>
                <goal>generate</goal>
              </goals>
            </execution>
          </executions>
        </plugin>

        <!-- Workaround for the 'M2E plugin execution not covered' problem.
             See: https://wiki.eclipse.org/M2E_plugin_execution_not_covered -->
        <plugin>
          <groupId>org.eclipse.m2e</groupId>
          <artifactId>lifecycle-mapping</artifactId>
          <version>1.0.0</version>
          <configuration>
            <lifecycleMappingMetadata>
              <pluginExecutions>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <versionRange>[1.7,)</versionRange>
                    <goals>
                      <goal>run</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-checkstyle-plugin</artifactId>
                    <versionRange>[1.0,)</versionRange>
                    <goals>
                      <goal>check</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-enforcer-plugin</artifactId>
                    <versionRange>[1.0,)</versionRange>
                    <goals>
                      <goal>enforce</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-clean-plugin</artifactId>
                    <versionRange>[1.0,)</versionRange>
                    <goals>
                      <goal>clean</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.felix</groupId>
                    <artifactId>maven-bundle-plugin</artifactId>
                    <versionRange>[2.4,)</versionRange>
                    <goals>
                      <goal>manifest</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.fusesource.hawtjni</groupId>
                    <artifactId>hawtjni-maven-plugin</artifactId>
                    <versionRange>[1.10,)</versionRange>
                    <goals>
                      <goal>generate</goal>
                      <goal>build</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <versionRange>[2.8,)</versionRange>
                    <goals>
                      <goal>get</goal>
                      <goal>copy</goal>
                      <goal>properties</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-remote-resources-plugin</artifactId>
          <version>1.5</version>
          <configuration>
            <resourceBundles>
              <resourceBundle>io.netty:netty-dev-tools:${project.version}</resourceBundle>
            </resourceBundles>
            <outputDirectory>${netty.dev.tools.directory}</outputDirectory>
            <!-- don't include netty-dev-tools in artifacts -->
            <attachToMain>false</attachToMain>
            <attachToTest>false</attachToTest>
          </configuration>
          <executions>
            <execution>
              <goals>
                <goal>process</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
        <plugin>
          <groupId>de.thetaphi</groupId>
          <artifactId>forbiddenapis</artifactId>
          <version>2.2</version>
          <executions>
            <execution>
              <id>check-forbidden-apis</id>
              <configuration>
                <targetVersion>${maven.compiler.target}</targetVersion>
                <!-- allow undocumented classes like sun.misc.Unsafe: -->
                <internalRuntimeForbidden>false</internalRuntimeForbidden>
                <!-- if the used Java version is too new, don't fail, just do nothing: -->
                <failOnUnsupportedJava>false</failOnUnsupportedJava>
                <bundledSignatures>
                  <!-- This will automatically choose the right signatures based on 'targetVersion': -->
                  <!-- enabling these should be done in the future -->
                  <!-- bundledSignature>jdk-unsafe</bundledSignature -->
                  <!-- bundledSignature>jdk-deprecated</bundledSignature -->
                  <!-- bundledSignature>jdk-system-out</bundledSignature -->
                </bundledSignatures>
                <signaturesFiles>
                  <signaturesFile>${netty.dev.tools.directory}/forbidden/signatures.txt</signaturesFile>
                </signaturesFiles>
                <suppressAnnotations><annotation>**.SuppressForbidden</annotation></suppressAnnotations>
              </configuration>
              <phase>compile</phase>
              <goals>
                <goal>check</goal>
              </goals>
            </execution>
            <execution>
              <id>check-forbidden-test-apis</id>
              <configuration>
                <targetVersion>${maven.compiler.target}</targetVersion>
                <!-- allow undocumented classes like sun.misc.Unsafe: -->
                <internalRuntimeForbidden>true</internalRuntimeForbidden>
                <!-- if the used Java version is too new, don't fail, just do nothing: -->
                <failOnUnsupportedJava>false</failOnUnsupportedJava>
                <bundledSignatures>
                  <!-- This will automatically choose the right signatures based on 'targetVersion': -->
                  <!-- enabling these should be done in the future -->
                  <!-- bundledSignature>jdk-unsafe</bundledSignature -->
                  <!-- bundledSignature>jdk-deprecated</bundledSignature -->
                </bundledSignatures>
                <signaturesFiles>
                  <signaturesFile>${netty.dev.tools.directory}/forbidden/signatures.txt</signaturesFile>
                </signaturesFiles>
                <suppressAnnotations><annotation>**.SuppressForbidden</annotation></suppressAnnotations>
              </configuration>
              <phase>test-compile</phase>
              <goals>
                <goal>testCheck</goal>
              </goals>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>
